React Native random white screens throughout debug and release app - reactjs-flux

I've been working on a React Native app on an Android tablet for my current contract and it's now going through its Alpha phase. For the most part it's working very well, it's responsive, performant, and mostly stable.
There's one issue that keeps occurring though which I'm having trouble tracking down. It seems very random since I've seen it happen on nearly every screen in the app all at times.
When transitioning to a new screen, I just get a blank white screen. Seems like the javascript just doesn't get loaded and the UI never loads. This happens in both our debug dev versions, and our bundled release versions.
Some things to note about the architecture
Android 6.0
React 15.4.1
React Native 0.39
Flux 3.1.0
I know this isn't a lot to go on so I'm mostly looking for people that may have experienced this problem (that wasn't related to the development server issues) and what they had found as a cause in their app. Hoping to get some suggestions of what to look at or possibly how to even troubleshoot what's causing this.
Oh one other thing, If I background the app when a white screen happens, then select the app from my running apps list, the screen loads just fine and I'm able to continue using the app as if nothing happened.
Sorry for the vagueness here but I'm really at a loss and looking for any kind of suggestions.
Thanks!

Related

Struggling to find good Examples of iOS app clip & Android instant Apps

I've searched for examples of iOS app clip & Android instant Apps but could not find more than few examples.
I am looking for released apps in App Store/Google Play or open source examples.
good examples could make developing these new features easier and gives developers new creative ideas to use these wonderful tools.
Do you have an app that utilizes App clip or instant app?
How did this affect your app?
What is the challenges you have faced?
Note: I know this is not a typical question but it need to be asked in a community full of great developers who love to share knowledge with others, and I don't think there is a better place than here.
Intro
I know it's been 10 months since you posted the question but I just stumbled upon it now... I've developed an app called ARShades for both iOS and Android that allows the user to try glasses on via Augmented Reality and I'm still in charge of development. The app supports both Instant App and App Clip, although I'm facing troubles making the the app banner show for the App Clip.
Firebase issues
As far as I can tell developing App Clips is a tad harder than develeloping Instant Apps, I'll tell you why. The main apps for both systems make extensive use of Firebase Firestore and many other features. This isn't a problem on Android where sockets are supported across the board, while on iOS they are only supported in the main app, so I had to use REST API to read and write data on Firebase when developing the App Clip, it's been a nightmare since it was the first time for me dealing with REST APIs (I just finished yesterday and published the update).
App Size
Another issue I faced is related to reducing the app size. On Android I had to remove all the unused images and compress the remamining ones. On iOS I had to separate the asset catalogues between: used only by the main app, shared, and used only by app clip. And of course I went through some compression works there too. I forgot to mention that I developed a new app as Instant App on Android, while you cannot do the same on iOS since it must be in the same project.
App to site linking
Another insidious part was the linking of the site to the apps. I managed to do it on Android by making changes to the manifest and specifying the host, while I can't seem to find a way to link the App Clip to the site in ay way. I've done everything the documentation says. I've put the apple app site association file in the .well-known folder but nothing, no banner shows up. I'll keep working on that.
Edit: Everything is now solved.
Conclusions
So, to sum up, I've found Instant Apps better on the developing and hassle side of things, the support sockets, hence the full suite of frameworks the full apps have. I hope I kind of answered your question, although I think you have documented yorself elsewhere in these past 10 months XD
Links to Android: https://play.google.com/store/apps/details?id=it.spaarkly.arshades&hl=en_US&gl=US
Link to iOS: https://apps.apple.com/us/app/arshades-demo/id1586661818
Link for trying Instant App / App Clip

NativeScript roadmap: Desktop support no longer on the cards?

I notice that desktop support isn't mentioned in NativeScript's future roadmap any more.
Has this been dropped for good, or is it still on the cards?
If it is still on the cards, for when is it planned?
NativeScript under Progress ownership
While NativeScript was owned by Progress, desktop support was never a priority; developer surveys did not show strong enough demand for it, and the NativeScript Core team were stretched too thinly to tackle it as a curiosity.
Of interest, before the death of Windows Phone, NativeScript did get very far on implementing a Universal Windows Platform runtime for NativeScript: https://github.com/NativeScript/windows-runtime
The NativeScript iOS runtime (https://github.com/NativeScript/ios-runtime for JSC, https://github.com/NativeScript/ns-v8ios-runtime for V8) is also close to delivering Catalyst support, although it's essentially undocumented for now.
I spoke with the NativeScript iOS runtime team and they said it would be pretty trivial to generate JS bindings to macOS (AppKit/Cocoa), too – though one would still have to implement all the UI components as AppKit ones, so it would only be the start of the journey.
Unofficial support
Kamen Bundev (on the Progress/Telerik NativeScript team) has been building a Qt-based desktop implementation of NativeScript as a hobby project for a long time:
https://github.com/bundyo/nativescript-platform-desktop
It has access to Node.js's APIs rather than, say, the Obj-C runtime on macOS, however.
NativeScript under nStudio ownership
NativeScript was recently handed over to nStudio, who may have a different stance. This question did in fact receive an official answer recently on Twitter:
They have also expressed love for the idea of creating Windows 10 apps with it (the tweet links to this issue, https://github.com/NativeScript/NativeScript/issues/8643):
My personal speculation
Note that I do not work for nStudio, and the dust is still settling after the NativeScript handover, so everything from here is just speculation:
So I think there's no question that the passion is there – the real question is whether they have the resources to back it. I personally think that there won't be any movement on it anytime soon, as nStudio need at least a few months just to get used to driving the NativeScript ecosystem and sorting out the long-standing open-source frictions. I think that they'd absolutely welcome a community-driven effort on this, of course. I imagine that by 2021 they'll feel more ready to take on projects of that scale.

When will Nativescript for Windows mature past the proof of concept stage?

The readme.md at https://github.com/NativeScript/windows-runtime says that the Windows runtime for Nativescript is in proof of concept stage, and then lists what I understand to be very deep language features that are not implemented yet.
The tone on the https://www.nativescript.org/blog/nativescript-runtime-preview-for-windows-10 announcement seems a bit more enthusiastic about the current feature set.
Being able to use Nativescript on Windows Phone (and any other platform) is incredibly appealing.
TJ, a core team member, recently posted on the forums about this:
Hey #NezzaGrey,
Thanks for reaching out, and awesome that you’re liking NativeScript :smile:. >Straight to the point though—we’re not actively working on UWP support because >1) it’s a ton of work to add a new platform and commit to supporting that >platform indefinitely, and 2) we’re not seeing nearly enough demand from our >community to justify taking on that work.
That doesn’t mean that UWP support in NativeScript will never happen, but it’s >not coming in the short term because we’re just not seeing the demand. That can >always change though. I’d encourage you to add your use case to the GitHub >issue open for adding UWP support in NativeScript: >https://github.com/NativeScript/NativeScript/issues/254. Yes, the issue is >somewhat ancient, but we really do pay attention to well-thought-out comments >during roadmap discussions.
I’ll note two other things. First, our initial work on making a Windows runtime >is completely open source and available on GitHub: >https://github.com/NativeScript/windows-runtime. We’d love to have community >?>help to make the new runtime a reality.
Second, one option you have is to build your iOS and Android apps with >NativeScript and Angular, and to use our code sharing approaches (see ?>https://www.nativescript.org/blog/code-sharing-between-web-and-mobile-with->angular-and-nativescript1) to share your Angular code with other apps. You >could take that approach to share Angular code between your NativeScript apps >and your UWP apps if you use something like Electron. This approach isn’t >ideal, as you’d probably prefer to build a completely native UWP app, but it’s >something to consider if you’re open to using Electron.
Anyways, hopefully you found some of this helpful. If you have any other >questions feel free to follow up.
Source: https://discourse.nativescript.org/t/windows-uwp-support/2659/3

Android performance issues with SDK 5.4.0 GA?

I have just compiled an existing app with the latest SDK 5.4.0 GA and was surprised to see some weird issues that look like performance issues but I am not sure.
I use an activity indicator (Ti.UI.createActivityIndicator) while time consuming things like loading data in memory or fetching data from the app server take place, and with the new SDK the animation is really choppy. The same app under the exact same conditions but compiled with 5.3.1 GA shows the activity indicator nice and smooth so it is something related to the 5.4.0 GA.
Any idea what it might be and if this is a bug or something I might need to change in terms of configuration?
I have tried switching the run-on-main-thread property but it had no impact.
The overall performance of the app does not appear to be impacted - hard to tell really.
No such issues with iOS.
Any suggestions?

Unity WebGL build throws errors

I am working on a multiplayer game for WebGL platform and i am using (http://lockstep.io/ - SocketIo & node.js server ) for handling the game.
I am facing these issues as shown in the attached image.
I have no idea about what these errors state?
I don't think that the issue is from my coding side as my multiplayer game runs perfectly in standalone builds with more than 4 instances of the standalone build.
But it does not even open in my WebGL build.
Does WebGL does not support threading??
Please guide. What are these errors all about? Can these issues be solved?? or Do i have to change my whole project implementation?
Unity WebGl does not support Multithreading. Although Unity is working hard to bring Thread support in WebGL.
Do not compare standalone with WebGL because many features are not supported in WebGL. Looking at the error, it says something about Thread and that could definitely be the problem. About 90% chances it is the problem.
You cannot solve this problem right now unless you remove the use of SocketIo.
I don't know how SocketIo is implemented so I can't tell you if Thread is the only problem it has but if it uses other API's not supported in WebGL, then you will still have problems.
The only known network API that is made and optimized to work with WebGL is the new Unity web API called UnityWebRequest. You have to modify your code to use that. The link I provided provides many examples needed to get started with it.
if you use anything like webrequestm System.web or socket, WebGL will crash. UnityWebRequest is the only solution. It is faster than WWW and you need Unity 5.2 and above to use it.

Resources