Using native SDK in React Native or Ionic - ionic-framework

I intend to develop an app for our site but one of the main worry is that I need to use a 3rd party payment gateway that only provides SDK for android in Java and iOS in Objective-C.
I want to know if it is appropriate to use React-Native or Ionic for the app. I am not sure which of these framework supports integration of native integrated and work flawlessly.
Hope someone with experience can help advise on this.
Thanks.

For react-native you can write your native modules for both android(JAVA) and ios(OBJECTIVE-C). It provides you right to write code in module and then register the module for your further use inside your application.
You can read the complete docs from :-
For android https://facebook.github.io/react-native/docs/native-modules-android.html
and for ios https://facebook.github.io/react-native/docs/native-modules-ios.html

Related

which framework is good for building barcode scanner mobile app?

I'm planning to make an application that uses barcode scanning to scan UPC barcodes and maybe other barcode standards, I will be using firebase for database, I would like to have suggestions on which framework/tool for Mobile Development that I should use?
What I need in the framework is :
JS Libraries and packages support(NPM support would be Nice)
Community and tutorial Support(StackOverflow,github..etc)
CSS Libraries and icons support
Access to native features
I'll be developing for android but maybe I'll try to make it cross-platform later
I know about a few frameworks/tools Like ionic3, React Native, Android studio but I'm not sure which I should use?
I am currently developing an app in Ionic and I used the native barcode-scanner plugin. For me it was easy to implement and works great. Ionic makes use of Cordova.
https://ionicframework.com/docs/native/barcode-scanner
This plugin supports UPC_A and UPC_E barcodes.
Ionic has enough documentation and a start guide.
Ionic icons: ionicons
Access to native features: yes
Ionic can build to Android, IOS and windows.

Can you use Swift with React Native

Does anyone know if it’s possible to develop a fully Native iOS and Android based Social Media Platform using React Native and Swift or Objective C to integrate a native instant messenger app into the newsfeed via a floating icon?
Our website is responsive and would make a great hybrid app using a native wrap but we are looking to stray away from web based solutions and want to try and build a fully native solution with React Native and possible Swift or Objective C. We discovered a decent IM sdk that is feature rich but is written in Objective C and Swift and wish to use this Instant Messaging Solution and attempt to match chat graphics with the rest of the app.
All thoughts, ideas and solutions are appreciated.
You can write code in Objective-C/Swift or Java for developing your own modules and to take advantage of native API for iOS or Android. But React-Native has some build-on modules that would simplify your workd just by writing JavaScript and that the magic of React-Native. It makes possible to build Apps in JavaScript that use real native elements and not just WebViews.
If you need to write your own modules in Objective-C/Swift or Java you should make use of the Bridge that implements React-Native for sharing data between Native-Code and Javascript code.
"Sometimes an app needs to access a platform API and React Native doesn't have a corresponding module yet. Maybe you want to reuse some existing Objective-C, Swift or C++ code without having to reimplement it in JavaScript, or write some high performance, multi-threaded code such as for image processing, a database, or any number of advanced extensions." from React-Native oficial website

Does Ionic compile the Code to Native?

I've searched some times here but could't find an Answer to this.
Does someone know this and can explain how Ionic handles it?
Does Ionic compile the Code to Native? NO
Ionic is for developing Hybrid apps.
What are Hybrid apps?
Hybrid apps are essentially websites embedded in a mobile app through
what we call a webview. They are developed using HTML5, CSS, and
Javascript, and execute the same code regardless of the platform in
which they run. They can, with tools like PhoneGap and Cordova, use
the native features of a device, like GPS or camera.
What are Native apps?
Native apps are developed in the language required by the platform it
targets, Objective-C or Swift for iOS, Java for Android, etc. The code
written is not shared across platforms and their behavior varies. They
have direct access to all features offered by the platform without any
restriction.
Here is a nice article about it.
Cordova converts the project into a native which has only ONE Page, that is a WebView (WKV WEB View in iOS, etc). And all of the ionic code is run on that webview. Basically an ionic/cordova app is a website which looks like an app!

What makes nativescript better than ionic

im new to mobile development and i see ionic framework has very big community BUT
i know that ionic uses webview while nativescript generates native components
my question now what nativescript can do ionic cannot do?
in other words what is the powerful points in nativescript that does not exists in ionic
thanks in advance.
Ionic is hybrid, running inside webview which has problem with performance at particular things like even simpler animation, not fully accessible API of native part
Nativescript runs as native app, controlled by JS code but can be used even with native code or even as addon to native app and full access to API of native code

Can you add platform specific code in PhoneGap?

If I have an application build using PhoneGap is it possible to add to it platform specific code?
For instance, for an iOS version I would like to add Heatma.ps SDK.
Heatma.ps SDK is an iOS specific static library written in Objective-c.
yes you can add as much platform specific code as you want. Phonegap is just for the interaction of the platform specific code and the javascript. Its the plugin mechanism that makes Phonegap what it is. Even if you have a native app, you can add a bit of Phonegap in it by having a page somewhere which is basically a webview and is manipulated by js. Phonegap is what launches and manages the interactions of the js and the native part of the app.