Installing and installing iOS / Android applications on your device

I have an application that is already published on the App Store and Play Store. The published application points to my production server. I want my devices to install an "intermediate" application that points to my intermediate server, so I will not get confused with real users during my development. In fact, my device would have two of my applications - MyApp and MyApp_Staging. The installation application should be available for my testers.

I am using the Push Notification function from Parse. How can a production application have the same function? Do I need a different developer account for the middleware application?

I watched iOS beta features. It seems like my install app should be reviewed by Apple before I push my testers. How can I skip the review process? For Android, phased deployment seems like a good idea, but the supplied application will replace the production application.

Is there a way for both standard and production applications to be installed on devices?

+6
source share
2 answers

For iOS:

I have an installation and production application for iOS installed on a single device. I can't answer this for Android, but here is my iOS setup with parsing alerts.

A: several versions of the application on one device:

For both applications that must be installed on the same device, they must have different package identifiers. For this:

  • Open your project and go to the "Information" tab for your purpose.
  • Find the Package ID parameter
  • Add a suffix at the end of the identifier as follows: com.MyApp$(BUNDLE_ID_SUFFIX)
  • Now open the Build Options tab and add a new custom option
  • Set the parameter name to BUNDLE_ID_SUFFIX
  • Add a different suffix for each of the assembly configurations that you have. for example, Debugging can have a .debug value. Leave the suffix for the Release configuration blank. I have 3 build configurations with different suffixes.
    • Debugging for development testing
    • Adhoc to release adhoc builds for testers.
    • Release for release on the App Store.
  • If you follow this path, you will notice that all versions of the application installed on your device have the same name, and it will be difficult to talk about it.
  • To fix this, go back to the "Information" tab and edit the Package Display Name parameter to say ${PRODUCT_NAME}${BUNDLE_DISPLAY_NAME_SUFFIX}
  • Similar to what we did above, create a new User-Defined parameter named BUNDLE_DISPLAY_NAME_SUFFIX and add different values ​​for each assembly configuration. for example mine say Ξ± and Ξ².

The above will allow you to install multiple versions of the application on one device.

B: Configure push notifications using parsing between versions.

To configure browser alerts for these versions: follow the instructions in the Deploy section to create certificates and provisioning profiles for each of the package identifiers. for example I have 3 certificates / provisioning profiles for my 3 package identifiers:

  • com.MyApp.debug is a development profile for DEBUG.
  • com.MyApp.adhoc is an AdHoc Production profile for special checks.
  • com.MyApp is an AppStore Production profile to send to the App Store.

Be sure to configure the correct configuration profiles in the build settings so that the application is correctly signed.

Download all certificates at Parse.com. Parse allows you to have 6 different push certificates for iOS.

C: use of different production and intermediate servers.

Configure preprocessing macros on the Create Settings tab. Finding a Preprocessor for Apple LLVM 6.1 - Preprocessing for Customization Preprocessor macros configure different macros for each build configuration. for example mine say for Adhoc ADHOC=1 , for Debug DEBUG=1

Then somewhere in your source code there is something like the following:

 #if defined(DEBUG) #define SERVER <development server> #else #if defined(ADHOC) #define SERVER <staging server> #else #define SERVER <production server> #endif 

D: sending collections to testers.

This question was probably considered several times. I do not like the Apple Beta testing process. There are many other solutions. I like Beta from Crashlytics.

You can read about it here: http://try.crashlytics.com/beta/

I am deploying the AdHoc build configuration for testers because it is built with an Adhoc provisioning profile that allows me to deploy it to 100 devices without Apple approval.

+8
source

For Android

  • To install both devices on the same device at the same time, use different package names for the application

com.company.testapp - for an application in com.company.testapp

com.company.live - for real-time application

  • To interact with the server use different URLs in both applications, for example. store URLs in a file and use them as static variables.

  • Deploy the GCM / push notification code for both servers.

+2
source

Source: https://habr.com/ru/post/985237/


All Articles