FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveMac / FivePhone (iPhone, iPad) he conseguido un iphone
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 12:40 AM

Antonio

si me lo imagino, pero todo sea por aportar

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 01:11 AM

Daniel,

Cuantos más seamos intentándolo, más posibilidades de que lo consigamos :-)

A ver si finalmente podemos desarrollar con Harbour para el iPhone/iPad/AppleTV :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 01:16 AM

Antonio

Siempre trato de estar atento...

(esto continua construyendo...)

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 01:23 AM
Manuel,

Funcionando!!! :-)

Faltaba la ventana!!!

He modificado el código fuente de windows.m de esta forma: (cambios muy rápidos para que compilase bien)
Code (fw): Select all Collapse
#import <UIKit/UIKit.h>
#define HB_DONT_DEFINE_BOOL
#include <hbapi.h>
 
void SetWndMain( UIWindow * window );
 
HB_FUNC( CREATEWINDOW )
{
   UIWindow * window = [ UIWindow alloc ];
   // float color[ 4 ] = { 0, 0, 0.63, 1 }; // R, G, B, Alpha
 
   // [ window setView : [ [ UIView alloc ] initWithFrame : [ window bounds ] ] ];
   [ window setBackgroundColor: [ UIColor greenColor ] ];
 
   hb_retnl( ( LONG ) window );
}
 
HB_FUNC( WNDACTIVATE )
{
   UIWindow * window = ( UIWindow * ) hb_parnl( 1 );
 
   SetWndMain( window );   
 
   // [ window orderFront : nil ];
   [ window makeKeyAndVisible ];
}              
 
HB_FUNC( WNDCLOSE )
{
   UIWindow * window = ( UIWindow * ) hb_parnl( 1 );
 
   [ window release ];
}

Ojo que el make está mal y le falta compilar y meter en la librería windows.o
Code (fw): Select all Collapse
./lib/libfivec.a : ./objc/mainapp.o ./objc/uikit.o ./objc/msgs.o ./objc/windows.o
    $(LM) -static -o ./lib/libfivec.a ./objc/mainapp.o ./objc/uikit.o ./objc/msgs.o ./objc/windows.o

Y el PRG que he probado es tutor02.prg con un MsgInfo() al final:
Code (fw): Select all Collapse
function Main()

   local oWnd := TWindow():New()

   oWnd:Activate()
   
   MsgInfo( "Hello world!" )
   
return nil

Finalmente he metido el ejecutable en TabBarSample y le he hecho chmod +x TabBarSample y tambien ldid -S TabBarSample

Posiblemente fallen un montón de cosas aún, pero ya está aqui :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 02:08 AM
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 2365
Joined: Wed Nov 02, 2005 11:46 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 03:29 AM
...

Hasta aqui llegue... el iphone no continua pues se reinicia cada vez que llega a este punto

en este link esta lo que logro construir

http://www.sitasoft.net/fivemac/iphone/files/hrbiphone.zip


cuando ejecuto harbour sigue aparenciendo KILLED!!!



Posts: 1516
Joined: Thu May 27, 2010 02:06 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 08:20 AM

Antonio , felicidadesssssss :D :o .
¿ Currando a las 4:05 ? ¿ No duermes ? :)
Ya se ha empezado a cortar el melon .
A ver si podemos solucionar lo de Daniel para que pueda hechar un cable . Me da que tiene que ser un problema con la forma de compilar del gcc , agun modificador o algo asi . -arm e vez arm6 o cosa similar , estoy investigando el tema ...
Saludos.

Posts: 1516
Joined: Thu May 27, 2010 02:06 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 09:00 AM
He encontrado esto :
http://code.google.com/p/iphone-gcc/issues/detail?id=2
no se si será lo mismo ( mi ingles es pesimo ) pero suena muy parecido.
Saludos.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 09:10 AM

Daniel,

Prueba a hacer ldid -S harbour (solo una vez) y luego ejecuta harbour

Parece que en esa versión de Cydia y jailbreak no se esté haciendo de forma automática.

En iOS 4.1 no es necesario usar ldid -S ... pues parece que el jailbreak anula la comprobación del firmado de las aplicaciones. Yo solo le hago chmod +x ... para que la aplicación sea ejecutable.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1516
Joined: Thu May 27, 2010 02:06 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 11:01 AM
unas notas sobre los ipas...
1.-Es un zip renombrado
2.- en su interior una carpeta llamada Payload ( ojo con las mayusculas , que es case sensitive) . dentro de esta carpeta se encuentra el ejecutable ( carpeta app)
3.El archivo iTunesArtwork es realmente un archivo jpg o png de 512x512 de resolución . No se si tiene importancia , pero el perfil de color que lleva incrustado es Apple iTunes color ( nunca lo he visto antes ) . Para crear nuestro propio Artwork , con photoshop y una plantilla de boton es bastante facil.
para el que quiera aumentar conocimientos en todo lo que se refiere a iconos para ios ...http://www.cutelittlefactory.com/articles/designing-iphone-icons/ y http://developer.apple.com/library/ios/#documentation/UserExperience/Conceptual/MobileHIG/IconsImages/IconsImages.html

Saludos.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 12:06 PM

Manuel,

Ando intentando captar un "touch" event. En principio, puesto que UIWindow deriva de UIView y este de UIResponder, seria suficiente con derivar una clase Window a partir de UIWindow e implementar (redefinir) touchesBegan.

Sin embargo lo he probado ya de un montón de maneras distintas y sin éxito por el momento...

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 12:19 PM
Funcionando !!! :-)

Me faltaba darle el area correcta:
Code (fw): Select all Collapse
void MsgInfo( NSString * );
 
@interface Window : UIWindow
{
}
- ( void ) touchesBegan : ( NSSet * ) touches withEvent : ( UIEvent * ) event;
@end 
 
@implementation Window
- ( void ) touchesBegan : ( NSSet * ) touches withEvent : ( UIEvent * ) event
{
   MsgInfo( @"touch!" );   
}
@end 

HB_FUNC( CREATEWINDOW )
{
   Window * window = [ [ Window alloc ] initWithFrame : [ [ UIScreen mainScreen ] bounds ] ];
 
   window.backgroundColor = [ UIColor greenColor ];
 
   hb_retnl( ( LONG ) window );
}

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1516
Joined: Thu May 27, 2010 02:06 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 01:18 PM
Antonio ya tengo tus ejemplos funcionando sin problemas .
Dos cosas :
El msginfo que tengo me sale sin el boton y aqui no veo su codigo ...
No necesitamos ( por lo menos con el 4.1) usar el ldid , funciona directamente ...

por cierto anoto aqui la guia de referencia para tenerla siempre presente : http://developer.apple.com/library/ios/navigation/index.html
Saludos
------------------------ edito para -------------------
Apppath()
funcionando .
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 01:48 PM
Manuel,

Añadiendo este @"OK" (msgs.m) aqui te aparece el botón:

Code (fw): Select all Collapse
void MsgInfo( NSString * text )
{
   UIAlertView * alert = [ [ UIAlertView alloc ] initWithTitle : @"Information" 
                         message : text delegate : GetApp() 
                         cancelButtonTitle : @"OK" otherButtonTitles : nil ];   
                         
  [ alert show ];
  [ alert autorelease ];                         
}
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 512
Joined: Mon Oct 17, 2005 10:38 AM
Re: he conseguido un iphone
Posted: Fri Oct 22, 2010 02:11 PM

Sorry if I write in English :oops:
You can make programming for the Iphone only if you jailbreak it ?
Massimo.
P.S. You are making an incredible work :P :P :P