Please advise me on Java mobile app [closed] - android

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I am new to Java and I want to create a Java app for mobiles. When I approached software companies they asked for "Android / Blackberry / Symbian" etc...
Being a newb, I am really surprised by these questions. Can you please tell me whether there are any other mobile platforms in Java?
Are Blackberry apps and Java mobile apps different? And what is the target phone for j2ME applications?

Java ME is waning.
iPhone is Objective-C; there's no Java on iPhone.
Android is its own platform, different from Java ME.
BlackBerry used to be based on Java ME, but they're moving in an HTML/CSS/JavaScript direction, away from Java ME.

j2me is a technology that was used a couple of years ago for creating those apps on the cheap phones (think pre-smartphones). blackberry and symbian have a bit of an extended java libraries but it is still similar to j2me (painful to create apps that don't look good plus in later global events symbian os is becoming more and more unpopular which means less and less developers are needed).
But basically the major part of the mobile apps are written in java, one way of another. there is also IOS which uses xCode. maybe even some embedded development platforms that are using c++ or something but i can't really say for those.
EDIT:
Oh and yes there is windows mobile now that is becoming quite popular. getting into windows 7 mobile development is actually a good idea in my opinion. Although currently its pretty poor in terms of available resources community etc.. it can possibly grow in the next year or two. Plus the app competitions is quite small, there isn't a market so its easier to push through a successful app (which isn't the case with iphone and also the android market becomes filled really fast).

J2ME only supports on Symbian and Blackberry platform. LWUIT is J2ME framework. You can develop symbian, blackberry and android application by using this framework. If you are using LWUIT framework means no need to write the coding for different platform. You can use same coding for all platform(Symbian, Balckberry and Android). But you have change some small changes for each platform.
Basically iPhone supports objective-C. But you can develop the iPhone application by using C# with MonoTouch framework. If you know java means C# with MonoTouch framework better for iPhone development. But it will be cost.

Related

Creating graphical apps using C++ [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I can say it's a long time I've been searching for the more correct way of using my C++ skills for making real world apps. To me, most of the real world apps are graphical ones — those that have graphical environment and GUIs, like any ordinary app used on MS Windows. Of course there are many other (and probably vital) real world apps that are used for embedded systems that may don't have GUI.
Apart from MS Windows, there are quite a bit programs for other OSes like Linux.
On smartphones we also use iOS apps for devices made by Apple and Android ones as well.
My purpose is being able to create apps for the following platforms, in order of priority:
1- MS Windows platform
2- iOS and Android platform
3- Maybe in future, Linux platform or embedded systems
These are my needs generally.
Saying these matters, one idea comes into view: A good IDE that we can use our C++ experience in it to make cross-platform apps that can also supports those 3 needs perfectly, yes, Qt.
But there seem to be some difficulties on using Qt. I read some of discussions said in the link below, but since I'm not familiar with it yet, I couldn't understand high-level subjects.
https://softwareengineering.stackexchange.com/questions/88685/why-arent-more-desktop-apps-written-with-qt
I know that each choice may have its own advantages and weaknesses. But finally I have to choose.
My intention is to start learning Qt in near future and now to be sure that my chosen way for that near future (one or two months later) is not wrong!
Now I want you expert guys that please help this novice to make a correct decision.
My question on making the issue clear for me is that:
Is Qt the best choice for my needs please? (Those three needs)
Thanks in advance.
You can use Qt Qml from Qt5
Qml allows to develop desktop and mobile applications. What you will need is to compile your application for new platform.
Qml is language for developing UI, but qml is javascript-based language and you can do logic in qml files. To provide your C++ classes you can just register they in C++ code.
P.S Qt for mobile platforms is good idea for fast-developed solutions for all mobile platform. If you want to get all available features and functionality from AndroidSDK, for example, you must use AndroidSDK or AndroidSDK wrappers.
P.S.S Qt is the best solution for crossplatform gui applications, and qt is easy to learn framework

How to make mobile apps for different OS [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
Hi friends i want to know about how to make apps for different OS.For eg: ANDROID,BLACKBERRY,iPhone,Windows Phone and Nokia phone.Which programming language is required for there different OS.Can any same programming language can be use for all this different OS.
To make apps (mobile apps, I think you mean) for different OS's(I think you mean the different OS's on each phone),(assumption: that you're coding it from scratch) you learn a programming language first, then proceed to learn how to make apps for a particular OS. Typically, you purchase a book (look online for good recommendations) and start from there. You can also find tons of online resource about coding basics, and mobile app development.
I am sure you can use most popular languages; Java, Python, C++/C#/C, etc...
Generally, people make either Android Apps, or iOS apps. They code in Java for Android (and it's derivatives), and Objective-C in iOS but Swift is quite new and I heard it has many cool features, and is the better choice to use for iOS in comparison to Objective-C.
Yes, you can use the same language across the platforms you listed in your question, but generally stick with the common languages most people use, as the difficulty increases when you choose more elegant languages, like Prolog or Haskell etc. :)
#SiddhantSingh you should go for java scripting(i.e.,phone gap)
Android and iOS are completely different. You are asking how to begin creating apps for all phones, iOS is specifically referring to apple products. For apple, go to their website and download the development kit, Xcode (It is in objective-c and/or their own language called Swift). For android, it is primarily in java, and some starter development kits are offered for android as well! To make it really simple these are usually used to develop- Xcode for iOS, you can get it from apple; and some of the most common for Android are gradle and app inventor, which you can get from gradle.com or MIT's website respectively.
If you have a good idea which is support to receive good reviews from all platform App users. I suggest you consider about Web App and Hybrid Framework Development. I hope you get a little knowledge about those two things.
The common point between Web App and Hybrid Framework is saving your time, which means a couple of mobile OS can run your App with one-time development. Multi-OS development and different Program languages are absolutely unnecessary for you. I think this new way of development can bring you the concentration on App's essential thing.

What does cross platform mobile app development mean? In simple terms [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I need to know What does cross platform mobile app development mean?
In simple terms.
In an ideal world, it means "write once, run on many platforms". There are many tools to write once code base and compile apps to run on Android, iOS, BB10, etc... While they are great tools, each has some limitations, but it's worth researching them.
Some examples are:
CoronaSDK
Marmalade
PhoneGap
Unity
CodenameOne
Gingee - this one is new
...
The best way to do it (i guess) is develop a html5 app to work with IOS, Windows Phone a Android Device.
u can develop for example a WebApp for each plataform (i will talk about only three top, IOS, ANDROID and Windows Phone). But u will need that your HTML5 works for each webapp render engine.
It means a way to develop apps for different platforms, like Android, iOS and Blackberry with the same source code. Normally you would have to develop each app separately using it's own development kit, depending on the platform.
An example of a framework that allows you to do cross-platform development is Phonegap.
There are various Mobile Application Development Platforms available such as PhoneGap, Kony or JQueryMobile which allows you to develop in a single language and run on multiple platforms. The big problem with these is that you usually lose some native look and feel.
Cross-platform mobile development means you can develop apps for the different platform. let me give you an example take a Saas based application development platform Wavemaker. Build your app using WaveMaker and launch it in one go both on Andriod and IOS with the same source code.
Cross-platform mobile development refers to the development of mobile apps that can be used on multiple mobile platforms.
In the business world, a growing trend called BYOD (Bring Your Own Device) is rising. BYOD refers to employees bringing their own personal mobile device into the workplace to be used in place of traditional desktop computers or company-provided mobile devices for accessing company applications and data. Because of BYOD, it has become necessary for businesses to develop their corporate mobile apps and be able to send them to many different mobile devices that operate on various networks and use different operating systems.
Following technologies are used for developing cross platform apps.
phonegap
titanium
sencha touch
xamarin etc...

cross mobile platforms programming [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 8 years ago.
Improve this question
I'm new to mobile dev and I'm interested in developing the application for iOS, Android, and Windows Phone 7. And I'd like write less code. For the present time I see that C++ may fit well.
What I know is that :
it's possible to use C++ with Objective-C even in one file together for iOS, and I can link my c++ libs.
it's possible to use C++ through NDK on Android.
So I can write most of my app in c++ (except some very specific platform dependent parts) and make calls to my app through some sort of exposed Facade, right?
What can be done with windows phone 7? I know that it's .Net based. And in .NET it's possible to call code from c++ win32 dll's. But what with wp7? I wouldn't like to rewrite everything to C#.
Or maybe all this crossplatform game isn't good idea. Are there some critical pitfalls? Maybe it's better to have Obj-C only for iOS, Java only for Android, and C# only with it's silverlight and xna, and to maintain all this zoo separatelly?
Experienced mobile devs please share your experience.
Windows Phone 7 has no support for native code, yet. Have a look at this question for more info: Is it possible to program for Windows Phone 7 in standard C++ only?
If you want to code for those 3 platforms and reuse a lot of what you write, you could code in C# and use Mono from Xamarin to run your code on iOS and Android.
Note, that on Android, C++ is not fully supported. It's more about pure C.
Programming in C on android is basically reserved for games. If you don't want to make your UI in OpenGL, forget it and just write it in Java. You'll need a small Java wrapper anyway.
The same applies for iOS - if you use only OpenGL, you can write everything in C and use obj-c only as a small application wrapper.
From that you can see this is reserved mainly for games. There are tools available (e.g. http://www.madewithmarmalade.com/) which can help you develop openGL games easily)
The main differences between the platforms arise from the different UI frameworks. There are tools that try to help you overcome the differences - most of them are based on HTML 5 and they are using CSS to simulate the native UI. Usually you have to sacrifice a lot of user experience.
You have to understand that if you want your application to look perfect on different platforms, you have to write the UI separately and natively for each platform. Even UI design must be different. iPhone and iPad need lots of cool animations, they must be perfect for portrait & landscape mode (including the rotating animation), using navigation bar, toolbar, split view... Android users expect something else - a different (menu) toolbar, you need to port it to a lot of different screen resolutions and the user experience will be different.
I would recommend to start with native iOS and if the app is profitable (if this is the reason for your app), develop it for other platforms. iOS app always generate most money.
Have a look at phonegap. It claims to be cross platform, although I'm sure it brings the features down to a common denominator.
Among the current existing platforms , most of them support the HTML5, javascript including the iOS, Android and WP7 or upcoming WP8 also may support.
So it is advicable to write the applications using the HTML5 and javascript.
The same JavaScript HTML5 applications can be deployed on the individual platforms by using the framework which provides libraries for multiple platforms such as PhoneGap
Morever PhoneGap is open source mobile framework free to use.
Also you can refer the following link for the Top five HTML5 frameworks for Mobile developement.
I have quite good experience developing apps for iOS and Android with Titanium Appcelerator. The code is written in JavaScript and mapped to native calls, so you get a native look and feel.
PhoneGap has a different approach. The App is written in HTML, CSS and Javascript. The advantage is that it supports more different plattforms. Including iOS, Android and Windows Phone 7.
Did you look at MonoTouch and Mono for Android from Xamarin? http://xamarin.com/
They say you can re-use up to 90% of your app logic and create device-native user experiences / UI with access to all the native platforms API and device sensors.

Converting iPhone/iPad apps onto Android [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I have started to build my own apps on iPhone and iPad using the iPhone SDK. The next question that is always asked by the client is, "Can we have it on Android?"
So my question to you, 'the internet', is: what are my options?
I don't have the time to learn another language (learning iOS has been enough!), so are there companies who specialize in this, or are there any online services that do a conversion?
Any help on this welcome, just need to know which way to turn...
No, there is no way to convert an existing iOS app to an Android app.
However, there are cross-platform frameworks that allow you to code once and deploy your app in more than one platform. The most popular are based on HTML/CSS/JavaScript and one of them is PhoneGap.
You can also develop for iOS and Android with Adobe technologies such as Adobe AIR (this was forbidden by Apple until recently).
And there are online services (such as Mobile Roadie) that allow you to generate cross-platform apps using a content management system.
That said, I strongly recommend to:
Learn Android and Java development if you want to specialize in mobile development.
Take advantage of the strengths of each platform when working on an iOS/Android project, instead of creating something that uses only what's common to both.
Converting a native application from one mobile platform to the other is not a straight-forward process unless the initial application was built with a framework with cross-platform capabilities from the start.
Your options at this point are learn the other platform and develop it yourself, or contract with another development company which specializes in the platform you need to target.
Due to the massive differences between the 2 platforms, you are looking at a complete rewrite of your application. You either do it yourself or pay someone else to do it. I don't see any shortcuts you can take.
You may be interested in reading my book, HTML5 for iOS and Android, which enables you to take web apps created in HTML, JavaScript & CSS, and turn them into standalone apps that you can upload to the app stores (for free or to sell). See http://html5formobile.com - the wrappers to do this for the iOS and Android SDKs are freely available on the website, and you don't need any knowledge of either programming language if you follow the instructions in the book.
You can try the following https://bitbucket.org/zabirauf/icona.
Its open source iOS to Android Application Conversion Tool.
Even if there was a way to easily port an Objective-C application to Java, I wouldn't highly encourage it. iPhone users and Android users are two different families of users. The typical iPhone interface just wouldn't sit well with Android users who aren't familiar with how the iPhone works. Yes, I understand that the UIs of both iPhone and Android seem pretty trivial to learn to most people, but when you break a novice's comfort zone, it puts your applications (or websites) on a higher learning curve.
You should take the time to learn Android's language and UI and develop your application in a fashion that is consistent with how applications on Android work. As said in other answers, if your taught yourself Objective-C, you should find that Java will come pretty easily to you. In addition, in never hurts to know more than one programming language.
You can't just convert iOS apps into Android. iOS is Objective-C and Android is Java.
I highly doubt there are 'converters' on the internet, even if there are that's not the way you should program an app because every SDK has his own special capabilities and you should use them for maximum user-experience.
I'm sure there are some companies who specialize in porting apps from iOS to Android. Look it up on Google I'd say..
If you want an easy place to look for android development you can try appMaker which I hear is a GUI based Android development tool or I believe Google has released its own GUI based android application development tool. If you are not a java programmer than you might be better off with the gui. Otherwise I would say android is not too different from traditional java. As a java programmer who went from Android to iOS, I will tell you Android is a walk in the park compared to learning iOS. Two completely different beasts in my opinion.
Selecting a mobile development environment which will enable you write once and deploy/distribute it on many devices would be a better solution in the future. If your application is HTML-based, go with HTML5/CSS alternative (ex: PhoneGap, ). If you prefer native, then chances are you may want to learn Lua, a scripting language (ex: Gideros Studio) or C++ (ex: Mosync).
Other than that, the application you created on iOS with Objective-C is very, very hard to port to Android and other devices.

Categories

Resources