How to create Java app for Android. Questions [closed] - java

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.

Related

how to write an android app with languages other than java

my title is a little different than what i try to say, i couldnt exactly tell what i mean.
as far as i know we develop android apps with android studio(and there were support for other ide s like eclipse before) you code it and make a gui app with drag and drop.
recently i tried to open source code of few android apps like whatsapp. i extracted the classes.dex file and checked the source code. it was written with java. but when i google "whatsapp" it says it is written with erlang.
my question is, how the code written with erlang turns to a java code? as far as i know you can make android apps with c++ too. since we dont have a translator for languages, how is this being possible?
WhatsApps backend is written in Erlang, not the app
https://www.quora.com/Is-WhatsApp-fully-written-in-Erlang
Android uses the Java Virtual Machine (JVM) runtime. To run Android apps on a phone you either need to write them in a JVM language (Java, Kotlin, Scala), or write them in another language and that has a rumtime interpreter on the device (Javascript + Android Webview, Flutter + Flutter Runtime)
You can write your app in just c++, but then you won't have any of the Android SDK available to you. You'd have to rebuild the entire view plaform (among other things). Flutter does this.
If you have more specific questions I'd be happy to answer them

Is it possible to run a java program inside a C# on a windows phone?

I'm in 2nd year of bachelor and working on my final project which is on the end of 3rd year.. But the project is on Java. I want to make it run in my laptop and on my phone. But I have a Microsoft Lumia 640. And I know how to create apps for my phone just in C#. Is it possible to design a mini software, and run it inside a C# app in my phone?
No, natively Windows Phone doesn't support Java but you can take a look to codename one where in their manifesto says that you will able to make mobile application for any platform only using java.
If you habe the java application as a jar lib you can use ikvm (a jvm for .net) and then you can theoretically run java bin code on the windows phone... you will need to take a look because maybe the issue will be how to deploy that jar to your phone at runtime

Questions regarding Windows/Android development (Java:APK/JAR)

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 ;)

The Bluestacks Android emulator is built using .Net?

I recently installed the Bluestacks Android emulator. I happened to look at the process running under ProcessExplorer and was surprised to see that it is a .NET application.
The HD-Frontend.exe is the Bluestacks UI process and is highlighted yellow because it has loaded the .NET framework. There are a number of other processes associated with Bluestacks and most are also .NET.
Opening the EXE in Reflector.NET also shows that it is .NET.
I thought Android was Java-based. What's going on here?
Android is Java-based, but that does not mean an Android emulator has to be written in Java -- just functionally emulate Android devices.
While BlueStack's site does not list any system requirements for its emulator that I could find, at least a couple sites -- e.g. Bazooka Apps and Android Emulator for PC -- mention .NET as a requirement.
Ultimately the proof of what's going on is right in the process list and Reflector results you found.
its an emulation tool whose job is to read the dex code respond to that how the android phone should respond and not to compile and run that dex so it could be on python or ruby also there is no boundation at all that you have to make android emulator on java becuase android is built upon java.

cross android pc java graphics interface

Is there a UI package that works on both Android and desktop Java? I am wondering if a package exists that can either be handed a window or activity and will display user defined graphics with a identical interface on both Android and a PC.
The end goal is to have code that works both on android and a PC with very minor to no modification either way. A tool such as Bluestack is not what I am looking for because it requires installation on the users end.
I do not think this is possible.
You can install the android sdk + emulator and run the apk on the desktop, but then you have already expressed your wish not to install anything on the client side.
Considering your requirement (identical interface, minor to no modification, no user installation) I would say your best bet is a web application with a mobile view css.
It turns out that JGame was more or less what I was looking for. It runs fine on both desktop java and android devices.

Categories