27

Best way to make cross platform apps (iOS + android)?

I've heard that the following are good options:
1. Xamarin
2. ReactNative
3. Ionic2
4. NativeScript

I have experience in web development but I am a quick learner and don't have a problem learning a new language.

Or should I go native and release apps for the different systems separately?

Comments
  • 6
  • 4
    There is also weex (vuejs)

    Personally I have been using react recently, dev experience is good,?but it takes away freedom of use, so I would advice against it. (Liscene+Patent)

    I used Xamarin in a bigger project, you still ebd up writing a lot of code for each seperate platform. We had probably around 45-60% shared code at most. Dev experience was clunky, slow and annoying.

    Separate native code is good, but it is a lot of work, I have done it before but wont recommend it for one man teams.

    I have not tried weex (alibaba) and there isnt any proper documentation yet, but it seems promising in the near future.

    NativeScript allows you to have good feeedom, but I personally dont like angular, I tried angular 1, it was heavy to learn and then the team ddcides to create a whole new framework under the same name.

    Sorry if I havent helped with making your decision easier. If I were to pick one right now, I'd pick either weex or react. I am trying to move away from react due to liscencing
  • 1
    @rusty-hacker I have used React (not ReactNative) before and I am comfortable in using it, but I'm apprehensive for the same reason as yours.

    I can understand why xamarin might require a lot of platform specific coding but then is it still better than creating 2 different apps.

    Hence Ionic would seem the best route but I don't like angular.

    So there's no clear winner 😞
  • 0
    What about Appcelerator?
  • 0
    @Jumpshot44 would you recommend it? If so, why?
  • 5
    Native native native native native ... and what was that other word I was looking for, oh yeah native!
  • 1
    @Jumpshot44 I assumed based on the suggestions, free options were only being considered. But hey, our favourite app, devRant uses titanium :)
  • 0
    Anything good that doesn't use JavaScript?
  • 5
    @TheInitializer Xamarin uses C#
  • 6
    xamarin for me cuz c# is easy for me
  • 2
    Depends on how much effort you want to put on your app. If it's really important and need to be scaled in future then go native.

    But if it is something small or small project go for one of those.

    Personally I have used react-native and you can write 90%+ shared code if you want to. Looks pretty good to me so far.

    As for the patent or licensing issues, I wouldn't worry about it, especially if it is not a large project.
  • 2
    React native plus I use Swift. Internship ahead.
  • 0
    @rusty-hacker why would ever want to sue Facebook?
  • 2
    Another one is Flutter written in Dart
  • 1
  • 1
    @tahnik it is a matter of principle. It takes away the freedom of innovators and is falsely advertised. It is BSD with strings attached, in my book that is not BSD and its not free.

    Also these days, facebook isnt just a social networks, it is social networks + AI + Live Streaming + Instagram/photogtaohy + VR and those are the ones I can tell from the top of my head. If you are starting a company in those fields (which could expand), tlyou have one more thing to worry about. On the other hand if you are developing a solution for a customer, small or big, you are obligated to tell them about the possible risks of using such a framework and convince them. Anyway you look at it, if you can find other options, I think it is worth investing in those rather than react.

    I have used react/react-native in my last 2 projects, but solely becaus of the liscencing concerns, I am looking to move away and advice others to do so until facebook removes those restrictive patents.
  • 0
    Depends on what you're comfortable with: React Native and Nativescript require strong JS skills, while Xamarin requires a stronger OOP profile due to the C# side.

    On the other hand, Xamarin is also expensive AF, while the other two are open source :)

    If it were for me, I'd go with Nativescript - it's much more mature than React Native and free versus Xamarin.
  • 1
    @Hojasdemanzano Xamarin is open source and free ^^
  • 1
    Native is an art. When nothing was there, native was. When everything else came, native was still there. And when everything else will fail, native will still be there.
  • 1
    Iconic2 is an framework basically its phonegap.
  • 2
  • 1
    I used Xamarin.Forms on a big project. After about 6 months of work we ended turning for native.

    Imo Xamarin is good if the app you're developing is simple. We had a LOT of design customizations so that had to be implemented in platform specific code anyways. Also we used a lot plugins that at some point proved not customizable enough (like geolocation). We ended up writing a geolocation api for each platform.

    So yeah my experience with it was not good. I recomend native depending on the app requirements.
  • 0
    If you use MonkeyX then you can create one native application that runs on both iOS and Android. It's geared towards games but I bet it will work fine, I've never used it tho
  • 0
    If you're planning in making video games (doubt it), use libgdx. It's awesome.
  • 1
    I've started learning VueJS, as I'm interested in diving into Weex's cross-platform development. I also enjoy that Vue is like a lightweight and far less complicated version of Angular in many ways.

    I'm currently avoiding React due to the restrictive patents that I've heard so many complaints about, but I really need to personally read into their guidelines for use.
  • 0
    Doesn't matter, mobile dev is shit either way.
Add Comment