Will React-Native eventually support HarmonyOS? - react-native

What's going to happen now that Huawei is releasing their new OS? If it blows up, and there's a good chance it will, there'd be a massive gap in access to a whole new platform. I've chosen the easy way out and I've been developing mobile apps for iOS and Android via React-Native. Will React-Native support HarmonyOS?

This question might be better directed towards the React Native Feature Requests page.
I haven't seen any mentions to add support for HarmonyOS at this stage, however the community could add support if there's demand. There's plenty of prior art around for alternative platforms.
If Facebook starts supporting HarmonyOS with its apps, then first-class support is much more likely.

I think we need to wait for HarmonyOS become more popular with
developer & user, currently (Dec 2020), Huawei only shares beta
testing for a limited partner of them after the HDC event, no more
technical docs available for HarmonyOS app developers at this time.
If it becomes more popular & attracts developers, maybe React-Native will support it, For more information, you can find at https://www.huaweicentral.com/harmonyos-hongmeng-os-everything-you-need-to-know/

Related

What software would you recommend for making a simple list-creating app for iOS and Android?

So, my aunt wants me to make an app to help people create lists and be more organized. It would also have pre-made lists and tips that occasionally appear. We both want it to be for iOS and Android. Does anyone have recommendations for what software I could use to create something like that? One other thing to note: I can't use XCode because I'm not a mac user. Thank you for your input.
This question depends a lot in preference and personal opinion...
Unity is my personal favorite tool to deploy in multiple platforms and even if its a game engine I have used it for simple user interface aplications with very little effort and bug count... the withdrawals are that you use a "lot" to make so little... the whole physics engine does nothing and the apk weigths at least 20Mb ... but its a very simple tool that could do the job in a couple of days having little experience and thats what i like about it.... theres also Xamarin C# , Android studio... React.. Depends a lot on your liking...and personal preference.
If I were you, I would go for React Native it is a mobile apps building framework using only Javascript!
Here is a showcase of real-world apps using RN: Who's using React Native?

React Native vs Swift/Objective-C/Java Native

I'm working on a new project for a Fintech company and I have been tasked with looking into whether we should go with React Native or native Swift/Objective-C/Java for our mobile app development technology and strategy going forward.
I have done loads of research into this and have read many of the case studies relating to React Native, but I still don't feel I have enough to make an informed decision at this point.
The broad app functionality will include things like:
Data related functions such as Account Balances and Statements (pretty simple)
Image capture of identity documents and selfies of the users
Capture of biometric data
Push notifications
Some of this is pretty standard and simple, but some of it will require the app to use low level device functions and/or use 3rd party Android and iOS SDKs.
So, in terms of working towards the decision of a mobile development strategy, can I ask you for your input, based on your recent experience, on reasons to consider React Native over native Swift/Objective-C/Java development in the light of the planned functionality listed above (including reasons why it may be far better to stick with the native languages/platforms).
From own experience I can tell that React Native is a good choice for most of the apps when you need to develop and iterate fast. It usually means it would be cheaper to develop for a customer.
Looking at the list of features I can not see anything that can not be done in RN. Sooner or later you'll have to dive into native code, usually to bridge native modules with JS. I've done this multiple times, it's not that hard and documentation on RN website helps a lot.
Be aware that you'll most certainly run into stupid bugs and you'll have to find workaround. At least this happened to me multiple times when I was building RN app half a year ago, maybe now it's more stable.
Also I believe it really depends on what are the devices of potential app users. I've never developed for Android, but heard from fellow developers, that on mid-level Android devices RN runs much slower, this should be tested from the very beginning.
React Native has a really nice and tempting idea behind sounds like "unified and almost fully shareable codebase for different platforms including Web". But from my experience (not so extensive but still) the reality is a little bit different – at some point you will face some issues with native code for sure, and it would be really good if you have experienced Swift/Objective-C/Java developers in your team to deal with it. Don't trust the promises "all you need is just a React Front-End Developer". The React Native platform itself seemed to me more like a magical blackbox which I ran with a single command having no any idea what's inside and how it actually works. You have to know at least something about Xcode and Android Emulator even if Facebook is trying to hide this aspect it from you as much as they can.
TL;DR In my opinion if you really want to try React Native for something more complex than TodoMVC then you need to have at least 3 developers: Web (JavaScript/React), iOS (Swift/Objective-C) and Android (Java). Or just one Superhero.

Developing apps for Xbox One?

I've heard that Xbox One application development is quite similar to Windows 8, but I haven't found much to suggest why, or what differences there are.
Is there any documentation about creating Xbox One applications (not games, apps.. like Netflix, etc), or even how to apply to obtain such information?
I've been trying to find more details myself. It sounds like the ability to develop apps is coming:
http://arstechnica.com/gaming/2013/10/wait-can-the-xbox-one-really-run-generalized-windows-8-apps/
Nothing to announce today, but when I talk about that common core,
you're seeing that common core in action, being able to target other
devices over time that run the Windows 8 engine.
If you want to know about how to get a head start about thinking about
developing for Xbox One, the logical thing to do is [to] go build
Windows 8 applications.
There are some additions in WinRT designed to allow interaction with Kinect:
http://www.oxm.co.uk/59024/features/what-its-actually-like-to-develop-for-xbox-one-microsoft-explains/?page=2
The applications are very similar to Windows 8, like we brought a lot
of the Windows 8 namespace - WinRT can be used for building those
applications, the time it takes to port a Windows 8 application to the
new Xbox? It's super, super easy. There's some things we added to the
platform for handling gestures, for handling voice and handling ten
foot UI paradigms.
Right now it appears the most you can do is try out your app ideas in WinRT and wait until an Xbox One SDK appears.
I've worked on a few of the launch apps for Xbox One. Unfortunately, you cannot get an app on the platform unless you've been invited (at this point in time), however rumour has it that MS may open up the platform a bit more in the next year or two.
All documentation and information regarding the development itself is all under strict NDA, so it's highly unlikely that you'll find any in depth details.
If you're interested, you can always try contacting the Xbox team for more information.
Important update on this topic:
Every Xbox One is now capable of going into developer mode via the Xbox Dev Mode App. Games and more importantly apps can now be developed by anyone.
FAQ on this topic: http://support.xbox.com/en-US/xbox-one/apps/developer-mode-activation-app-faq
Microsoft currently does not have any official documentation for Xbox One Apps, however it seems that if you go here: http://www.xbox.com/en-us/Developers/id You can register to become a developer for the Xbox One and get the development kit so you can develop apps for it.
Main information about developing for the Xbox can be found at http://www.xbox.com/en-US/developers, which includes how to register for an Xbox One development Kit
and the different tools and middleware that can be used to create games/apps for the Xbox. More documentation for the Xbox One will most likely get published by the end of this year.
To add to what I said, I recommend creating apps for the windows phones as it will show Microsoft that you can successfully build apps for their products. If your app gets enough downloads they will probably allow you to create an app for the Xbox One because you already have a track history
You could use Unity because it can use cross-platforms like Xbox, iPad, iPhone, PS4 and more. Also you can create 3D and 2D apps for development and to upload it to the phone you can use Xcode to build and run the unity project on the phone. If you get stuck you can always go to https://unity3d.com.

Same UI in iOS and Android

This one is a quick question regarding the possibility of having the same LnF (same look) on Android and iOS, is there an API that can provide something like this? SImilar to MAUI in MoSync or IwUI in marmaladeSDK?
Basically what I would like to do is to create my UI once for both iOS and Android using monodeveloper.
Note: Before anyone downvotes anymore, please take into account that this is a real requirement for a real project. The question is not without reason, since after looking at the documentation, I can see that Xamarin does not provide such solution, but other multi-platform SDKs do provide such solution, and since the mono ecosystem is vast, perhaps there is a third party library that can provide such functionality.
Unfortunately most of your code portability will be on the backend (non UI) when leveraging Monotouch. There are far too many inconsistencies with how an Android UI vs iOS UI are implemented respectively to their OS's.
Have you checked out http://ifactr.com/overview ? It is a paid product so I haven't tried it, but it might be at least work looking into. Other than this, no there is no cross-platform UI if you go the Mono route.
Taken directly from their page:
"But we learned that even with as much code sharing that MonoCross provides, for applications with significant UI layers, the burden of creating platform-specific UIs can be overbearing. So we created the iFactr UI abstraction layer, which allows developers to code to an abstract UI interface, and then reference our iFactr concrete implementations of that interface for all the mobile platforms, both as native UI implementations and HTML5 UI implementations.
While not a silver bullet for all mobile development, it is designed and optimized for rapidly creating data-driven UIs that enterprise users tend to demand. And because it’s integrated with MonoCross, you can mix-and-match your iFactr UI screens that are shared across platforms with screens that you can code to target specific platforms using the entire set of native APIs available on each mobile OS."
The problem is Android and iOS have different UI / UX metaphors.
Take this for example: http://kintek.com.au/blog/portkit-ux-metaphor-equivalents-for-ios-6-and-android-4/
The differences are fairly significant. If you use a development wrapper then you'll have to 100% rely on their tools. We've had experience with Titanium in the past and it wasn't good at all.

GWT & MVP in order to deliver BOTH Native (Android+ObjC) & HTML5 Mobile Apps?

So GWT best practices encourages one to use some flavour of MVP, which should in theory allow one to write different native views while sharing the presenter business logic.
This seems to be at the heart of the GWT spin off Google project http://code.google.com/p/j2objc/ which converts the non-UI part of your code to Objective-C, allowing you to write the rest natively in Objective-C.
So my question is: If this really hard part of the puzzle is being solved, how hard would it be to include an HTML5 mobile library (like MGWT or Touch4j [Sencha]) into this MVP pipeline to have the best of all worlds?
Having dabbled with http://code.google.com/p/playn/ , this clearly seems to be the blue-print for having a cross-plaftform build system (native android & html5 & java &...), but that project is geared for single screen drawing and event loop for game dynamics and doesn't allow for keyboard input and other typical mobile goodies.
It seems a shame that if so much of the problem has been solved, that it's not possible to go the extra mile. The answer to this question would be the best plan for actioning a solution, including such nigglies as which MVP structure to choose that would ease accommodation of the various widget libraries (GWTP vs MVP 2.1), and if the best approach is to start with the PlayN code base, and start to hack it.. what are the gotchas? Or if another path is chosen, why that one? and why would it be the best??
Thanx a lot. :-)
It is not clear whether your question is - evaluation options for multi-platform app development or mvp.
You can evaluate additional technology which are used with Sencha and GWT
1) mgwt
2) titanium
3) phonegap
You can also reference - Creating a mobile app using Google App Engine and GWT?
Note: PlayN as you mention is more of gaming platform and not suitable for business app.
MVP is definitely doable... and at times you may feel like its a lot of work, but it pays off in the end. Check out the Touch4j Kitchen Sink, which is written using MVP. You can take that down to the device with Cordova if you wish. The code is on GitHub:
https://github.com/emitrom/touch4jks
The repo is actively being worked on (we are updating ourselves to Touch4j 4.0) so it won't run out the gate, but at least you can see and follow the model :-)
Titanium4j is to Appcelerator's Titanium as Touch4j is to Sencha Touch. You may want to check that out as well. Titanium4j and Touch4j rely on GWT.
Cheers.