[Java] mit Java für IPod touch programmieren?

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von jimboc, 5. Mai 2009 .

  1. 5. Mai 2009
    mit Java für IPod touch programmieren?

    Hi,

    ich wollt ma fragen ob irgendjemand Erfahrung mit der Programmierung für das IPhone/den IPod Touch hat? Da ich keinen Mac besitze, kann ich das Dev-Kid von Apple nicht benutzen. Ich hatte jedoch schon öfter gelesen dass es eine Java runtime für das Gerät geben wird. Hat da irgendjemand was gehört oder gibt es andere Möglichkeiten das Porgrammieren zu ermöglichen (Mac auf einem Virtuellen PC hab ich schon vergeblich versucht).


    Danke im Vorraus
    jimboc
     
  2. 5. Mai 2009
    AW: mit Java für IPod touch programmieren?

    hey,

    so direkt hab ich das noch nich getestet aber hier steht wie du die Java VM auf den ipod bekommst

    How to Install Java VM on your iPod Touch | iPad, iPhone, and iPod touch forums | iFans

    damit solltest du alle Java progs zum laufen bekommen, denk aber da geht nur was mit console und nicht mit swing,awt oder dem swt framework. kann mich aber auch irren
     
  3. 5. Mai 2009
    AW: mit Java für IPod touch programmieren?

    geht nicht soweit ich weiß und wenn ja nur irgendwie über jailbreak

    und ist dann auch nicht die zeit wert da was zu entwickeln wenn möglicherweiße beim nächstem versionssprung keiner mehr für java support sorgt

    schau mal auf der seite des cydia entwicklers nach Bringing Debian APT to the iPhone - Jay Freeman (saurik) , mit nem c objective compiler kannst glaube ich über ne externe library für den ipod coden
    soweit ich weiß gabs da auf der seite was dazu

    ist aber alles ne echt schlechte lösung

    investiere lieber zeit dir n hackintosh aufzusetzen
     
  4. 6. Mai 2009
    AW: mit Java für IPod touch programmieren?

    Mit Jailbreak gehts hab ich selbst schon gemacht ist ganz Lustig^^
    Musst halt viel Objektiv-C nach Java portiern aber macht spaß.

    Such das Package Java/Iphone in Cydia und dann is da ein Demo App dabei + Alle Libs die du brauchst.

    Hier ein Demoapp mit bewegungssensor :
    Code:
    import static joc.Static.NO;
    
    import java.text.DecimalFormat;
    
    import joc.Message;
    import obc.CGRect;
    import obc.CGSize;
    import obc.NSString;
    import obc.UIAcceleration;
    import obc.UIAccelerometer;
    import obc.UIApplication;
    import obc.UIColor;
    import obc.UIHardware;
    import obc.UINavigationBar;
    import obc.UINavigationItem;
    import obc.UITextView;
    import obc.UIView;
    import obc.UIWindow;
    
    
    public class HelloWorld extends UIApplication
    {
     
     UIAccelerometer accelerometer;
     UITextView textview;
     NSString status = new NSString();
     private final static int kUpdateFrequency = 10;
     @Message
     public void applicationDidFinishLaunching$(Object unused) {
     // Oberflächengröße laden
     CGRect oScreenRect = UIHardware.$fullScreenApplicationContentRect();
     
     // X und Y Zurücksetzen
     oScreenRect.origin.x = oScreenRect.origin.y = 0;
     // Größe Laden
     CGSize oScreenSize = oScreenRect.size;
     // std-Größe des Navigationsbalken holen
     CGSize oNavBarSize = UINavigationBar.$defaultSize();
     float fNavBarHeight = oNavBarSize.height;
     
     // Bereich des Navigationsbalken definieren
     CGRect oNavBarRect = new CGRect(0, 0, oScreenSize.width, fNavBarHeight);
     // Bereich des Clientbereichs definieren
     CGRect oClientRect = new CGRect(0, fNavBarHeight,
     oScreenSize.width, oScreenSize.height-fNavBarHeight);
    
     // Fenster erzeugen und View hineinlegen
     UIWindow oWindow = new UIWindow().initWithContentRect$(oScreenRect);
     oWindow.setBackgroundColor$(UIColor.$whiteColor());
     UIView oView = new UIView().initWithFrame$(oScreenRect);
     oWindow.setContentView$(oView);
    
     // Navigationbar anlegen
     UINavigationBar oNavigationBar = new UINavigationBar()
     .initWithFrame$(oNavBarRect);
     UIAccelerometer test = null;
     
     // Titel hinzufügen
     UINavigationItem oTitleItem = new UINavigationItem()
     .initWithTitle$("Hallo Welt");
     oNavigationBar.pushNavigationItem$(oTitleItem);
     
     // Navigationbar als Subview Hinzufügen
     oView.addSubview$(oNavigationBar);
     
    // txtField = new UITextField().initWithFrame$(new CGRect(20,10,100,100));
    // txtField.addTarget$action$forEvents$(this, new Selector("onClick"), 255);
    // hallo = new UILabel().initWithFrame$(new CGRect(20,20,100,100));
    // hallo.setText$("HalloWelt !");
    // 
    // oView.addSubview$(hallo);
    // 
    // UIButton test = new UIButton().initWithFrame$(new CGRect(20,40,100,100));
    // test.setTitleColor$forState$(UIColor.$blackColor(), 0);
    // test.setTitle$forState$("Alert Show !", 0);
    // test.addTarget$action$forControlEvents$(this, new Selector("onClick1:"),0);
    // oView.addSubview$(test);
     accelerometer = (UIAccelerometer)UIAccelerometer.$sharedAccelerometer();
     accelerometer.setUpdateInterval$(20.0 / kUpdateFrequency);
     accelerometer.setDelegate$(this);
     
     textview = new UITextView().initWithFrame$(new CGRect(100,100,100,100));
     textview.setEditable$(NO);
     
     oView.addSubview$(textview);
     // Fenster anzeigen
     oWindow.orderFront$(this);
     oWindow.makeKey$(this);
     oWindow._setHidden$(NO);
     }
     
     @Message public void acceleratedInX$Y$Z$(double arg0, double arg1, double arg2) {
     textview.setText$(status.$stringWithFormat$("X: "+arg0 + " Y: "+arg1 + " Z: "+arg2));
     }
     
     @Message public void accelerometer$didAccelerate$(UIAcceleration acceleration) { 
     this.acceleratedInX$Y$Z$(acceleration.x(), acceleration.y(), acceleration.z());
     }
     
     
     
     
     
    
     
     
     
     
    }
    

    Dann musst dir noch die Standart App struktur nachbauen mit einem Binären Verweiß auf ./Java + Parameter was er starten soll
     
  5. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.