R Shiny App on an iPad in Internet Denied Locations - r

I currently have a number of Shiny Apps that I've developed that I'm looking to deploy on different platforms. I'm struggling with the problem of deploying a Shiny App (or some derivative of it) to an iPad that does not have internet access. Although it is possible to create a separate app for this purpose, most likely with React-Native, I'm trying to find a way to recycle as much code as possible.
Thus far, I've explored using tools to run the Shiny App as an electron application using R Shiny Electron (https://github.com/dirkschumacher/r-shiny-electron). More background is provided here https://www.youtube.com/watch?v=ARrbbviGvjc .
I was successfully able to use this tool to run my app with Electron but I realize that running Electron on an iPad is not feasible. I was hoping to salvage some JS used in this electron process in a react native app but I haven't found a way to do that yet either.
Does anyone have some insights as to how I could convert the electron app to React-Native without starting from scratch or at least use some of the Shiny code (preferably UI components) in a way that can be run on an iPad?

Related

Connecting JavaFX with Firebase

Is there any way for JavaFX (desktop) to work with Firebase. I built this web app as well as mobile counter parts that both interact with firebase but have this desktop part in JavaFX. After many searches, i can't seem to find anything solid. Feel free mention any other tech required to make it work. Thanks.

Mobile shiny app that runs offline, no connectivity

I am trying to make a shiny app that can be used on a smart phone without connectivity.
I have found several examples of shiny apps being bundled into something convenient and run on a desktop or mobile device, but they all still require an internet connection. I want the mobile app to be able to run locally with no connectivity.
The closest thing I have seen is making a shiny app into a Progressive Web App (PWA). PWAs in general do have the ability to run without connectivity, but shiny PWAs that I have found still require connectivity.
List of similar resources:
shiny as standalone electron app (not for mobile) Deploying R shiny app as a standalone application
PWAs for shiny https://github.com/pedrocoutinhosilva/shiny.pwa
shinymobile - does create PWA https://rinterface.github.io/shinyMobile/
From what I can tell, all these and others still require internet connection, though.
Any options for an app that can run on a smart phone without connectivity?
For an epidemiological cohort study, a Shiny app was developed to run completely offline in Android mobile devices. The app was designed for field level data capture. The code to setup the Android devices so that the Shiny app runs locally, offline, was published in GitHub, https://github.com/dmrodz/htrack. The installation_and_dependencies section contains the setup needed for the mobile device to run R (and the app) and deploy in the default browser (offline/locally).
The development of this app was peer-reviewed:
Rodríguez, D.M., Ryff, K., Sánchez-Gonzalez, L., Rivera-Amill, V., Paz-Bailey, G., Adams, L. (2020). HTrack: A new tool to facilitate public health field visits and electronic data capture. PLoS ONE 15(12): e0244028. https://doi.org/10.1371/journal.pone.0244028

Various ways to share R shiny app with coworkers

I have developed a shiny app for my coworkers. They dont have any programming experience and dont know anything about R. So I would like to share the Shiny app through the local LAN.
What are my options to build a local server. How do I explain to my IT department the necceseties to get the app running for my coworkers to see?

How to test a React Native App before going to production?

Basically I've finished my beta React Native app, and I'm ready to test it with a private group of people, in order to know if it's stable and to correct possible bugs.
I am using firebase as a backend, so I am wondering if it's better to Firebase Test Lab and/or Firebase App Distribution or TestFlight (for the IOS).
I would like to know the advantages of this tools.
https://appcenter.ms/ is pretty decent (Android)
for iOS you might want to use TestFlight (you need apple developer account
Firebase Test Lab is not for app distribution. It is a way to determine if your app has quality issues prior to launch across a wide variety of devices.

Possible to cross-platform develop Watch/Wearable applications?

since I am new in the world of developing apps for watches, and the fact that it exists for smartphones the following frameworks:
Xamarin
PhoneGap
appcelerator
kony
Cordova
...
I wonder if there exists for watches apps similar frameworks? So that you code once but run overall.
Thanks
Edit 1:
At this day (12.05.2015) regarding to the answer of a nativescript maintainer here. I will go with nativescript to start writing app for wearables.
Cordova/PhoneGap apps don't work directly on the wearable devices/watches. Cordova/PhoneGap is basically a javascript API which can run on WebKit/WebView on all the mobile OS's. But the Android Watch and Apple Watch doesn't support WebKit and so the apps developed with Cordova don't work directly on Watch devices. But if want to extend some of the features from the existing Cordova app to the wearable app, you need to create the extension app in native language and the extension should be able to communicate with the paired app on the mobile device. The extension on the Watch will have only UI and the bussiness logic etc runs on the Cordova app on the mobile. It is possible to establish communication between these apps which will drive the display on the watch devices.
I am not sure about the other frameworks you listed above on how much they support wearable devices.
As #kiran and #NRimer have mentioned, these cross platform frameworks are relying on the WebKit/WebView which is the almost universal layer supported on every mobile device. They dont run directly on the device, but device runs WebKit platform that runs these cross platform apps. So comparing the capabilities of the native app with cross platform app, native app is bigger, because it can have a hands on device hardware related features. The thing particular to the smart watches is that they mostly rely on other smart phone device, and it uses it's communication protocols, that are hardware specific, and WebKit doesnt have its hands on it.
It depends on what you're looking to do with the framework. Watch apps build off data provided by their containing app. For example if you want to provide custom notifications on the watch, the app (or server for remote notifications) constructs them. When your watch app needs information, it makes a request to the containing app. Lets say you have a group of apps that you want to provide the same notifications or functions on each of their watch apps, you could make a framework that handles these functions for the containing app. As for the watch portion, think of it as more of a display of information provided. Unfortunately i dont think there's a way to generate frameworks for watch apps yet. If you're looking to have a lot of code within the watch app this might be more difficult but for simple display of information you should be alright.

Resources