Story of rewriting react-native-opentok and challenges that we have encountered down the road…

  • Finally, we solved all of them :)This article contains useful steps that you can perform in order to debug and fix real-life issues on native sideWhat is OpenTok?The OpenTok platform, developed by TokBox, makes it easy to embed high-quality interactive video, voice, messaging, and screen sharing into web and mobile apps.It…
  • Here are the most annoying issues that we have encountered on each platform respectively while writing clients:Android: Updating native view doesn’t work.We had a native view which we wanted to update after we connect to a session and receive a stream.
  • Our Subscriber view implements SessionDelegate class what means we can set this view as a delegate in session and listen on events i.e. when session receive a stream, session instance invokes method onStreamReceived on pointer to delegate.
  • Enabling zombies in Xcode is very easy.Click the active scheme in the top left and choose Edit Scheme.Select Run on the left.Open the Diagnostics tab at the top.Tick the checkbox labeled Enable Zombie Objects.Tick the checkbox labeled Enable Zombie Objects.Now Xcode’s Console will give you more complex message i.e.[RNOpenTokSubscriberView respondsToSelector:] message…
  • So remember when you reload JS part of application new instance of your native module will be created but if you are using singleton it will be the same instance as before reload.As I wrote at the beginning we solved all of our issues but some of them took a…

At Callstack we have open source meetings each month. At one of the past meetings we came up with idea to re-maintain our old project called react-native-opentok, because it was a bit dusty and…
Continue reading “Story of rewriting react-native-opentok and challenges that we have encountered down the road…”

Wait. What is React Native Again?

Wait. What is React Native Again?   #reactNative

  • Overall, React Native has allowed our teams to build native apps in technology we understand, using tools we know and love.
  • One of our projects involved a re-write of an existing mobile application in Cordova.
  • Not only is React Native an extremely powerful tool for developing cross-platform applications in JavaScript, it’s very easy to learn for any Javascript developer with React knowledge .
  • When using a tool like Cordova, you write the majority of your business logic and UI in JavaScript.
  • React Native is a set of tools and libraries that allows developers to write React Components that generate genuine native interfaces.

As part of our consulting process here at Differential, we often determine that a mobile app would be a good fit for our clients. Most of the time Android and iOS support is desirable, and dedicating development resources to building a native experience for both platforms is very resource intensive. We’ve skirted around this issue in the past, mostly by using Cordova, which lets us write HTML, CSS, and JS to create cross-platform apps. Cordova works great for the most part, but we discovered that you can only go so far when using web technology to create apps that feel truly native.
Continue reading “Wait. What is React Native Again?”