I want to know how do you develop a multi platform app and/or for one operating system. E.g. If I want to develop an app for all operating systems (IOS and android and windows mobile) is that going to be a mobile site rather than a app or can I develop one app for all platforms.
I know duh... If I want to develop for android I just develop for android. And
The same goes for IOS.
Is there any articles I can read or that you know of that can help me find out.
E.g. The Facebook app did they design one for every platform and now they have to maintain all? Or do they only have one?
Any good articles/tutorials/books that can read or watch to show me more.
In my opinion it's better to develop separate app for every platform.
If you want to develop single app that run on every app you can use any framework.
If you are familiar with C# you can use Xamarin.
Another option is Phonegap. With phonegap you write HTML and JS.
You can design apps for cross-platform compilation, ie FreeRDP is one example. It is available for Android, iOS, MAC OSX, Windows.
For the above you need to put a wrapper or interfaces between your app functions and the OS specific functions.
Related
So I created an app on android studio and now my boss wants me to get it to work on Apple devices.
Is there a short cut to get an Android App to work on Apple devices ie iPhones, iPads and so on.
I really don't wanna create a whole other version for Apple devices.
Impossible. An option is to create hybrid application using Xamarin or Flutter which will run on both iOS and Android. That means you need to migrate you current implementation to hybrid app.
There are several options to do it and each of them has pros and cons so choose wisely.
Hybrid App
A hybrid app allows you to build a cross-platform mobile application with web technology. There are plenty of options you can use like Ionic, PhoneGap or React Native. But since you have built an Android app with the native code I assume, those existent features need to be rewritten in order to run on an iOS device.
Xamarin/Flutter
They are both create a native-like experience. The advantage of them comparing with hybrid app technology is the performance would be better in general. But again, it doesn't mean that you can just create an iOS app without changing any code, you'll still need to rewrite most of part in your app.
Kotlin Native
As an android developer, you're probably familiar with Kotlin. It's officially supported by Android team and It's 100% interoperable with Java. Kotlin can also be compiled to run on multiplatform including iOS. By this way, you'll be able to reuse a lot of existing Kotlin code on both Android and iOS so you don't need to use a new language to rewrite all the functionalities you had done on Android. The cons are It's an experimental feature so It's young and could change on the future and the reusability doesn't mean that you don't need to learn iOS platform.
I am working out an idea for some applications.
The applications needs to run on:
Windows as a desktop / UWP app
Android as a mobile app
IOS as a mobile app
Windows Phone as a mobile app
Website as a web application
All applications will have the same functions.
All applications will need to view, edit and store information in and from a database.
I used to program in VB back in the days that we only had windows forms and I am new to the nowadays frameworks.
Till now I was thinking about creating a webservice to let all applications communicate with the database and then create all the other applications in their own framework / languages.
I have found some articles about ASP.NET WebAPI which looked like what I needed for the webservice but I don't know if I can also use that for Android and IOS.
I also found something about Xamarin for building apps for all the platforms I am targeting.
Could anyone maybe inform me what framework best to use in this case.
Should I use Xamarin for the client apps? or is it better to create the apps in their own framework per platform?
Should I make the webservice with ASP.NET WebAPI? or is there an other framework which will be better in this case?
I also found something about Node.JS but am not sure what its for.
I am asking this because I need to educate myself in the languages / frameworks before I can start programming and I don't want to start educating in everything and in the end find out that it is useless in this scenario.
I´m using Kaa Platform(https://www.kaaproject.org/) to manage all comunication between devices ( ios, android, WP, etc ).
And for developing, i strongly recomend:
if you will use just android and ios: react-native ( https://facebook.github.io/react-native/)
if you will use android, ios and others: ionic ( https://ionicframework.com/)
I have an iPhone application (with an android counterpart), developed in Xcode and written in Objective-C. It is a classical native iOS app, already working and uploaded in the App Store. Similarly, the android version is built with Java and linked with the android SDKs. It's uploaded to the market place.
I was asked to port the app to Windows Phone. Is this possible without modifying the code?
I am not familiar with Windows Phone dev, however it looks like that is a completely
separate ecosystem for developing apps (different programming language, different IDE, different app store etc).
Can I go from Android to Windows Phone or from iOS to Windows Phone?
PhoneGap - or similar platforms - are not options since the code is already written in Objective-C and Java.
Like iOS and Android, Windows Phone is a completely different operating system and currently requires a completely different development platform.
It is not possible to take the existing code and make it function on a Windows Phone.
iOS commonly uses Objective-C for application development . Even if there was a way to compile Objective-C onto a Windows Phone, it would be inherently tied to platform features, and UI controls. While you could write some code in C++ and share it, with an iOS application, you'll still need some in Objective-C.
Android applications use Java normally. Java is not available for the Windows Phone platform. So, the language is out. Further, like iOS, the platform features are not necessarily shared and the UI control and behaviors are different. Android applications can use C++ (if you happened to code using it), but it has limitations, and by using it, again, you'd be tying the code to the Android platform potentially. Some code may be portable.
Windows Phone applications are usually written in C#/C++ and XAML or DirectX. While there is some similarity in languages (Java and C#), you'll encounter far more platform differences that could need significant effort to convert. From the way network requests are made to handling threads will be different (and many many more). Objective-C is also very different from C++.
Unless you had used something like Xamarin and written the underlying business logic using a common platform (C#/.NET), you'll need to consider a port to Windows Phone a fresh start.
It's not possible to just reuse all of the code that's been written. With a careful effort, you could share some common code (if it were written in C++), but as the shared code will not directly work with UI (and other platform features), you'd still need to do the UI on each platform, work around limitations, and potentially customize the user experience for each platform.
Microsoft has provided some guidance on porting, and provided some links with an API equivalency table here.
Yes, you can use Microsoft's Windows bridge for iOS to convert your iOS application code to Windows mobile platform code.
You need to use WinObjC SDK provided by Microsoft for this purpose.
Follow this link for more details.
No, you can't, WP apps are build with c# or .net and in visual studio IDE. There is no automated way to port a previously coded ios or android native app built with objetive-c or java to WP.
In my opinion there is no way to directly port a iphone app to windows phone app. You need to develop windows phone app with its needed environment like Visual Studio , windows phone sdk and with windows os.
You can also use cross platform like phonegap if it may fit to your requirement.
It looks like you have an existing Obj-C codebase for iOS, and a Java codebase for Android. No matter how you cut it, you're looking at [re]writing code to get something on WP8.
I don't know how "UI heavy" your app is; in general the UI code is the most platform specific (unless you're willing to put up with "cross platform" stuff that might not have good UX).
You might consider keeping the non-UI code mostly plain C++ and using Obj-C, etc. only for the parts where you have to talk to the framework. It will be easier to support multiple platforms with C++.
I took this approach with an app I'm working on; it's targeted for iOS but it's about 80% C++ (including Open GL). If I decide to port to Android I just need to deal with the 20%, mostly UI-ish code.
I am planning to develop a cross platform mobile app.
My app has to deal with camera, organizing pics.. I am planning to use PhoneGap for building the app. I need to select a user friendly IDE for developing my app. There are so many Editors in the market.
This is my first app and I am very confused which would be a best one to use. I am developing my app on Mac. I need a simple, user-friendly Editor.
Can someone please suggest what pros and cons do I have using different Editors and a better one to use?
I am currently using Monaca for developing mobile apps using PhoneGap. It includes an IDE for developing by simply using web browser. The good thing is that you write your code just using HTML5 and Javascript and deploy it to the platform such iOS, Android and Windows 8.
There is a guide here for create a simple app with camera using PhoneGap and JQuery mobile. It is very simple to do. You can have a try.
For Cordova/PhoneGap development right on iOS devices we developed GapCoder IDE.
I have developed application for android based mobile using Java. I have tried developing apps for Windows based mobile phones using C# and heard about iOS that one would need to know Objective C.
Wondering if there is any way to have one language to develop an application that can run on all these platforms. I understand every operating system executes programs having different binaries that it execute. But just wondering if there is any common platform like JRE that is run on these mobile operating systems.
Thanks for the reply
Short of working with HTML mobile webapps, I reckon your closest bet to a common language between the 3 platforms would be C# using Mono.
Check out Mono for Android and MonoTouch for iOS both supported by the same company.
Whilst you could probably use the same language for your apps and even share internal APIs across the different platforms, you would still start to encounter differences in how the UI is handled on each of the platforms.
There is a project: http://www.appcelerator.com/platform which can be used for writing apps for Android and iOS... But from my experience I can tell that this is good only for simple prototype apps. The more fancy app, the bigger issues you would have with it.