I'm looking at building an app in for deployment on the Mac OS X platform. I've recently cut my teeth on JavaFX and find it to be fun and useful. I am aware of various projects that allow you to port a JavaFX application to both iOS and as an App in the Appstore. What I am wondering is, is there a project that has wrapped Apple's Store APIs (StoreKit.framework?) in Java to allow for in app purchases?
Related
I'm working with LibGDX 1.5.6 on Windows and had successfully exported my app to Desktop, Android and HTML5.
But..
Assuming that I had previously selected the iOS project when creating the Gradle projects in the libGDX setup. And that I have a registered Device, Developer License and Provisioning Certificates for iOS development.
Is there a way to export my app to iOS, working on Windows?
Since Robovm depends on XCode to be installed I don't think it would be possible to deploy to iOS within Windows.
See the prerequisites from the official libgdx documentation here.
However, I was able to do it by running a virtual machine with Mac OS X, but my experience with it was not very pleasant, it runs very slow, specially if you use the iOS simulator. You will need a machine with a lot of RAM (8 RAM minimum). So I ended up buying a Mac Mini.
I used to use VMWare Workstation for emulation, but I had to download patches to make it work on the latest OS X version since it is not supported officially. It is a little hard to find any Mac OS X images to install on a virtual machine. I do not have any links to OS X images since that was quite a while ago, but you might be able to find some.
I'm planning to write a software (with GUI and sounds) that should run under Android and Windows 7/8
I guess the best approach for this is to use Java?
I am new to Android and Java development so my questions are:
-So can I use one development platform to create both (APK & JAR), namely Java?
-As far as I understand for Android I need to compile (from same source?) a .APK file and for Windows a .JAR file ?
(The .JAR will run in the Java Runtime that is installed in Windows)
-If I use Java what would be the best IDE, something like Google's Android Studio (will it allow to create .JAR?) or Oracle's JDK (Java SE Development Kit) ?
thank you
I don't think it is possible to write an app that will run on both OS's, since all GUI components are part of different frameworks (Android SDK for Android, SWT/Swing/... on Windows), and not compatible with all OS's.
You best bet is probably a web-based app. You can run it in the browser on dektop and either on a mobile browser on Android, or package it as a fullscreen WebView running your web app. The best part is it would also work on iOS.
You could also write your app for desktop in Swing and then convert it to an Android app, you can find questions on StackOverflow on the subject, such as this one.
Hope this helps ;)
So I developed an application for Android of which uses an SWF file. Now, I did this within Eclipse instead of using Flash CS6's native AIR libraries and such. Many devices of which downloaded the app are seeing it break because they can't support flash.
How would I go about including something like the AIR Runtime bundled with the application so all users could use the application?
Many thanks in advance.
Download the AIR SDK from Adobe. Create an application descriptor that references your SWF file and contains the proper settings for an Android mobile app (all documented on Adobe's developer site). Then use the AIR ADT tool to package it into an AIR app. That's all you should need to do assuming your SWF file is otherwise normal.
Context
http://news.ycombinator.com/item?id=4125530
Question:
Does this finally mean that Java Apps will be able to be posted to the Mac Store? (Since the JRE is automatically bundled into the application), and the iOS no-JIT clause does not apply since this is for the Mac store, not the iOS store?
Thanks!
Oracle have packaged the JavaFX Ensemble Sample Application for Mac using pre-release JavaFX packaging tools and submitted the application to the Mac App Store. The application was accepted and you can find Ensemble at this location in the Mac App Store.
For JavaFX specifically, using the JavaFX packaging tools which are mentioned in the ycombinator.com news item - not just yet - but potentially soon (e.g. jdk7u10 for Mac release time-frame). For other Java projects the Java application bundler could be used (which is a seperate tool from the JavaFX packaging tools).
There are currently a few quirks in the javafx implementation which prevent an application packaged with the javafx packaging tools from being submittable to the Mac App Store.
How to bundle a Java App and submit it to the Mac App Store:
Write a Java App.
Package the Java App for the Mac.
Submit the Java App to the Mac App Store.
See if Apple accepts it.
Oracle have produced a guide for Packaging a Java App for Distribution on a Mac, which includes information on how to Submitting an App to the Mac App Store.
Update
I asked an Oracle engineer about this on Oct 8, 2012 and got the following responses.
Q. If I want to package a JavaFX application for delivery to the Mac App Store, should I use the AppBundler or the JavaFX packaging tools?
A. JavaFX tools is way to go. At least long term (as you need to use current beta and it might have bugs).
Q. If the JavaFX packaging tools can be used to package an application for distribution to the Mac App Store, what are the steps to do this?
A. See materials from Scott's talk at JavaOne. We will publish blog on this but it may take some time.
Q. Can the JavaFX packaging tools also be used for packaging a non-JavaFX Java application for delivery to the Mac App Store?
A. yes, see the talkingjavadeployment blog.
The answer is now YES. Our app, Moneydance, has been submitted and approved and is now available for sale on the app store: http://infinitekind.com/moneydance-appstore.
One of our developers, Marco Dinacci, has written detailed instructions for how to do this for your app: http://intransitione.com/blog/take-java-to-app-store/
It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I'd like to create Java app that should work on both Android and Windows
.
I created JAR Java app on Eclipse Classic 3.7.1.
It works okay on Windows with Java 6 VM (http://www.java.com).
BTW, I tryed j2me app for mobile phone on Windows.
It does not work. Hmm....
I 've installed Jbed 1.20 on Android Emulator.
That j2me app started okay there.
But my own Eclipse's jar did not run.
It said that "no Midlet name" in it.
Well, it seems I should develop j2me midlets for Android.
Is it right?
I have installed J2ME_Runner 2.0.3.7 plugin in my Eclipse.
But I can't create j2me app.
I tryed the following
1) I created Java project. Then I created "File-new-others-j2me midlet".
The Eclipse indicates that the following strings are invalid:
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;
2) Next I tryed
file-new-project-J2me midlet suite.
I typed project name but I can fill the next screen.
There are empty "Group" and "Device". Dead end.
Questions.
How to create j2me midlet in Eclipse Classic for ANdroid 2.2 or 3.0?
Is it possible to run Java SE Jar files on Android?
What should I install to develop j2me midlets?
What is the better tool: Eclipse or NEtBeans?
BTW, I looked at J2ME "HelloWorld" source code.
Why it is so different than Java SE source code.
What? Java SE and ME source codes are not compatible?
Thanks.
I don't think there is an answer to your question. Java is not everything. You will not be able to create a GUI app that works on both Android and Java Desktop.
What you can do is to separate your application core library codes and your application GUI. The core library can be shared for both Android and Java Desktop application. However, you will need to implement GUI for Android and Java Desktop separately.
I believe J2ME is an old technology. Since most smart phone OSs have their own APIs and they perform much better than J2ME, there are less attention to this technology.
If you really want to have an application which run on any platform, you should considering making a web application. All you need is web browser but, of course, you will not be able to access system functionalities of your phone or OS.
I am not exactly sure, what you want to achieve.
Sure..there are probably J2ME emulators for both, Android and Windows, but I fail to see the point in using J2ME in either Android or Windows. Programming an App for both seems hard to me due to the different capabilities of each platform (Screen resolution, input device, ...)
Maybe there is also a misunderstanding: Android is a Mobile Device that features Java, but not in the way like some mobile devices that support JavaME. On Android mostly everything(e.g. Launcher, MailClient, Dialer, AppDrawer, ...) is built to run on the DalvikVM (The JVM on Android), not just some Games/Tools.
The DalvikVM provides nearly the same featureset as a desktop JavaVM, in fact you compile your class-files with a standard JavaSE compiler. You can use the same JAR libraries with Android and PC (as long as they don't use native code). So there is no need to use J2ME.
BUT: For some tasks (e.g. UI, device access) you have to distinguish between the 2 platforms, so it'll be hard to write an complete app that runs on both. But it is possible to create a JAR library with the Algorithms(maybe even the Listeners for the UI), which can be used by both, Android and PC - so you just have to build the UI for each platform seperatly.
For some hints, check out google for some Android tutorials, there are pretty good ones out there.
As for your second question: Eclipse! I never used NetBeans, so I can't tell which one is better, but there is the ADT, a plugin for AndroidDevelopment available, which is very powerful (I dare even say non-optional, even if you can develop for Android by just using Notepad and the Console)
J2ME apps won't work on PC, J2SE apps won't work on mobile phones. MIDlets are meant to be running on mobile phones so there's no way to run them on PC without emulators.
Back in old times I was developing J2ME apps in NetBeans with Wireless Toolkit tool. If you need to make MIDlets you will get all you need with that set.
Hint: developing rich feature MIDlets which should run properly on thousands of Java phones is a pain in the arse. Keep that in mind if you really want to start developing in native J2ME.