Skip to main content

React Native and how to (partly) integrate it in your native app



React Native
React Native lets you build mobile apps using only JavaScript. It uses the same design as React, letting you compose a rich mobile UI from declarative components.


  • React Native uses the same fundamental UI building blocks as regular iOS and Android apps. You just put those building blocks together using JavaScript and React.
  • With Hot Reloading, you can even run new code while retaining your application state.
  • React Native combines smoothly with components written in Objective-C, Java, or Swift.


Currently it's full monty or none: Either you use React Native completely for you app or you can't use it at all, e.g. for a single widget or screen. If you face the same situation take a look at:



Electrode Native: The Platform For Integrating React Native Into Your Apps


Electrode Native offers a streamlined integration of React Native into existing mobile applications. With Electrode Native, there will no longer be a need for an engineer who specializes in both mobile and React Native technology in order to put the two technologies together. For your existing mobile application, there is no heavy infrastructure, code, or development lifecycle changes. Electrode Native takes care of all that while providing quite a few more capabilities!

Medium.com

Electrode Native is a mobile platform that simplifies development and streamlines the integration of React Native components into existing mobile applications. Electrode Native requires minimal changes to the existing mobile code base and infrastructure. Using Electrode Native, you can leverage React Native potential in your mobile application.

electrode.io

Comments

Most Favorite Posts

Working natively with JavaScript in iOS and Android without WebView

Using JavaScript code from native code without using a WebView (sic!) can be really useful to introduce dynamic functionality that was updatable without need of updating the app shorter iteration cycles share code between backend and native iOS and Android apps You can have business logic provided by a JavaScript that then controls the app that inject native functionality in the JavaScript context. You could even write an A/B testing framework based on this approach. iOS iOS offers the native JavaScriptCore: Evaluate JavaScript programs from within an app, and support JavaScript scripting of your app. So you can evaluate a script and read its return value natively: context.evaluateScript(myLib); let result = context.evaluateScript("myFunction();") let myFunction = context.objectForKeyedSubscription("myFunction"); let parametrizedResult = myFunction.invokeMethod(...) Or you can inject a native object into the JavaScript engine: @objc protoco...

Validity Time Auto-Renewables in Sandbox

The subscription durations, sandbox durations and incentive durations of auto-renewables. Hint: In Sandbox the validity time differs from live environment!!! Durations Sandbox Duration Incentive Durations (optional) 7 days 3 minutes 7 days 1 month 5 minutes 7 days, 1 month 2 months 10 minutes 7 days, 1 month 3 months 15 minutes 1 month 6 months 30 minutes 1 month, 2 months 1 year 1 hour 1 month, 2 months, 3 months After 6 extensions the abo is cancelled automatically in the sandbox environment.

How to access specific settings in the iOS settings app

Apple Settings App Open the preference / settings app. You can open the app at different pages Native application URL string example: prefs:root=General&path=Bluetooth Extended example: Tags: settings preferences Airplane mode: prefs:root=AIRPLANE_MODE Bluetooth: prefs:root=General&path=Bluetooth Brightness: prefs:root=Brightness Location services: prefs:root=LOCATION_SERVICES Location services (System services): prefs:root=LOCATION_SERVICES_Systemservices Hotspots: prefs:root=Hotspot WLAN: prefs:root=WIFI UMTS-Settings: prefs:root=General&path=Network Mobile data: prefs:root=General&path=USAGE/CELLULAR_USAGE VPN: prefs:root=General&path=Network/VPN Sound: prefs:root=Sounds Rigntone: prefs:root=Sounds&path=Ringtone Siri speech settings: prefs:root=General&path=Assistant handleopenurl.com

Crash Reporter

Plausible CrashReporter provides an in-process crash reporting framework for use on both the iPhone and Mac OS X. Crash reports are output as protobuf-encoded messages, and may be decoded using the CrashReporter library or any Google Protobuf decoder. The CrashReporter library handles both uncaught exceptions and fatal signals. Features: Implemented as a in-process fully async-safe signal handler. Does not interfere with debugging in gdb Handles both uncaught Objective-C exceptions and fatal signals (SIGSEGV, SIGBUS, etc) Backtraces for all active threads are provided. Provides full register state for the crashed thread. The following platforms are currently supported: Mac OS X 10.5+ (x86-32, ppc, experimental x86-64) iPhone OS 2.0+: (armv6, armv7) iPhone Simulator 2.0+ (x86-32) PLCrashReporter Server part and extension: CrashReporterDemo MacDevCrashReporter See also: CrashKit Hoptoad Hexspeak

Great Teams Are About Personalities, Not Just Skills

The scientific evidence indicates quite clearly that individuals’ personalities play a significant role in determining team performance. In particular, personality affects: What role you have within the team How you interact with the rest of the team Whether your values (core beliefs) align with the team’s In our own work we found that psychological team roles are largely a product of people’s personalities. For example, consider team members who are: Results-oriented. Team members who naturally organize work and take charge tend to be socially self-confident, competitive, and energetic. Relationship-focused. Team members who naturally focus on relationships, are attuned to others' feelings, and are good at building cohesion tend to be warm, diplomatic, and approachable. Process and rule followers. Team members who pay attention to details, processes, and rules tend to be reliable, organized, and conscientious. Innovative and disruptive thinkers. Team members who n...

How to link to TestFlight App in iOS

There are two things you need to do. First, check to see if TestFlight is installed. Then create a new link to your app. NSURL *customAppURL = [NSURL URLWithString:@"itms-beta://"]; if ([[UIApplication sharedApplication] canOpenURL:customAppURL]) {     // TestFlight is installed     // Special link that includes the app's Apple ID     customAppURL = [NSURL URLWithString:@"https://beta.itunes.apple.com/v1/app/978489855"];      [[UIApplication sharedApplication] openURL:customAppURL]; } This special https://beta.itunes.apple.com URL will be opened directly in TestFlight. Finally, if you are using iOS 9 (or later), you need to make an addition to your Info.plist to get the canOpenURL: method to work. If your app is linked on or after iOS 9.0, you must declare the URL schemes you want to pass to this method. Do this by using the LSApplicationQueriesSchemes array in your Xcode project’s Info.plist file. For each URL scheme you wan...

Tips for working with Firebase Remote Config

Caching As long as we're talking about loading strategies, let me hit on a related topic; caching. It sometimes confuses developers that values from remote config are cached for 12 hours instead of being grabbed immediately every time you call fetch(). And while you can reduce this cache time somewhat, if you start making network calls too frequently, your app might start getting throttled, either by the client, or the Remote Config service. Obviously, while you're developing and testing your Remote Config implementation, this can be inconvenient, which is why you can override the local throttling behavior by turning on developer mode . Force Update of Remote Config With Firebase Cloud Messaging, you can send a data-only notification to all of your devices, letting them know that there's an urgent update pending. Your apps can respond to this incoming notification by storing some kind of flag locally. The next time your user starts up your app, it can look for thi...