Use Monaca Version in ios app - monaca

I am using Monaca Cloud IDE to build an ios (and android) app. In the App Build Settings > App Settings there is a required field of Version Number. I would like to display this number in my apps splash screen and an About screen in the app. Is this number accessible as a variable from within the app? If so how would I reference it?

I think this cordova-plugin-app-version plugin might help you to achieve what you want. It reads the version of your app from the target build settings. Hope this helps!

Related

Deploying React Native Apps directly to devices for testing

I'm looking into the best ways to deploy React Native apps to devices for testing. We don't want to put the app on the app store yet, but we do want the app to be downloadable to, say, an iPad.
What is the best way to do this? Do I need a testing platform or something like diawi? Or can I just put the file in an email and install it from there?
Anyway for deploying an iOS application, you have to follow the standard developer portal process. If you already did that then all good to go otherwise you just need to follow this tutorial.
Once you are done with code signing create a build using XCode Archive. This will generate .ipa file for you OR you can upload that to the testflight. If you want to skip testflight, there is one more tool available called diawi.Diawi gives you a link instantly using which you can deploy the application on test devices.
For iOS apps, test flight is the best way to go about this. https://developer.apple.com/testflight/
for Android , use internal testing and beta testing of google play
check android documentation of internal testing here
for IOS,use test flight

Add React-native app to 'Activities' panel on IOS

I am looking for informations about to add an App in the 'Activities' IOS panel in order to can add my app to the list of sharing apps.
I don't know if it's automatic or if it need some configuration.
Thanks
This is possible using AppExtensions in iOS SDK.
In React native, the docs talk about App extensions here. And an example app for sharing is available in a github repo.

ReactNative - Why does a React Native App need to connect to Local Host?

I have been reading a book on React Native that builds a simple React Native App for IOS in the first few chapters. When compiling and running the project in Xcode, a packager runs in the background and I can also see my app trying to connect to local host.
My understanding is that React Native converts JSX elements to platform specific views. So my question is why does the App need to connect to a server and what is the purpose of the packager running in the background?
Also, how is running the app on an Xcode simulator different from deploying it on the app store?
I have tried to look online for answers, but no one has addressed them. It seems everyone is taking it for granted that all this is obvious.
After looking for an answer, I stumbled upon the following guide from Facebook that answers a different question but also addresses mine indirectly.
So apparently, the localhost is a development server used to link your javascript code to the app, which you use if you are testing on a physical device or a simulator. So the question that comes to one mind after reading this is why not bundle that javascript code with the compiled IOS files? Well, it is best to keep them separate because it enables you to simply change your javascript code from your computer and have it automatically sync with your IOS app.
Now, when it comes to deploying to the app store, you will need to bundle the javascript code and remove the implementation part where it connects to a localhost, which, again, is used for debugging purposes.
You answered your own question it appears! In development mode, the JavaScript bundle is served from the react-native packager server on your machine.
When making a release for the App Store and Google Play, the JavaScript is minified and bundled into the app file (.ipa/.app for iOS, .apk for Android).
Running the app in release mode is possible from Xcode. Depending on how your project is set up, release mode could be a different target, a different scheme within one target, or a build configuration within a target's scheme. For more on iOS targets/schemes, see: Xcode: What is a target and scheme in plain language?

Is it possible to deploy both the iphone and ipad *.ipa to the Application Center?

I am able to build both the iphone and ipad ipa files (app.ipa and app-ipad.ipa) fine. However, when I go to deploy them to the Application Center via the native-deployer api,
the Application Center only shows one app of type "ios", where I expect two apps, one for iphone and one for ipad.
Since this is one worklight project. The application-descriptor is the same. The version number and bundle ids are exactly the same. What do I need to change to differentiate them?
I think if the bundle id is different Application Center will discern them, for sure. But worklight did not change the bundle id when I added the environment, so I left them unchanged.
The bundleId value in application-descriptor.xml for the iPad and iPhone environments is merely a placeholder. Obviously, you need to change it.
You can change it either in application-descriptor.xml, in which case it will be pre-set by the time you open the generated Xcode project in Xcode. Or you can set it when you open the project in Xcode.
The simplest way is to just set it in application-descriptor.xml...
Note that Worklight has got nothing to do with your iOS app once it is generated and you want to release it. Any and all configurations are then mostly related to Xcode settings of your application. Read more here:
Configuring Your Xcode Project for Distribution
Another thing to note is that a Worklight-based iOS app, be it the iPhone or iPad environment is configured as a Universal app by default (fit for both iPhone and iPad). Perhaps what is missing in your case is to differentiate the two.
In Xode, for each project (iPhone and iPad), look for the setting to set it as an iPhone or iPad app, rather than Universal app.
Then, try uploading to the Application Center management console again and check if you are now able to see TWO apps.

specify other platforms app icons in phonegap ios

I built the app using phonegap with xcode 4.5 .Basically i chosen the template as PhoneGap based application.And create the simple app successfully installed the apps in deveices(iPad & Android mobile).I could see only default icon on all devices.How to specify that?Do i need to modify in phonegap.plist?
Each platform has its own way of handling the application icon, so you'll have to do some more work than just updating one file.
Did you see phonegap's wiki on that topic?

Resources