The Java API is made available by importing the com.microsoft.codepush.react.CodePush
class into your MainActivity.java
file, and consists of a single public class named CodePush
.
Constructs the CodePush client runtime and represents the ReactPackage
instance that you add to you app's list of packages.
-
CodePush(String deploymentKey, Activity mainActivity) - Creates a new instance of the CodePush runtime, that will be used to query the service for updates via the provided deployment key. The
mainActivity
parameter should always be set tothis
when configuring your React packages list inside theMainActivity
class. This constructor puts the CodePush runtime into "release mode", so if you want to enable debugging behavior, use the following constructor instead. -
CodePush(String deploymentKey, Activity mainActivity, bool isDebugMode) - Equivalent to the previous constructor, but allows you to specify whether you want the CodePush runtime to be in debug mode or not. When using this constructor, the
isDebugMode
parameter should always be set toBuildConfig.DEBUG
in order to stay synchronized with your build type. When putting CodePush into debug mode, the following behaviors are enabled:-
Old CodePush updates aren't deleted from storage whenever a new binary is deployed to the emulator/device. This behavior enables you to deploy new binaries, without bumping the version during development, and without continuously getting the same update every time your app calls
sync
. -
The local cache that the React Native runtime maintains in debug mode is deleted whenever a CodePush update is installed. This ensures that when the app is restarted after an update is applied, you will see the expected changes. As soon as this PR is merged, we won't need to do this anymore.
-
-
getBundleUrl() - Returns the path to the most recent version of your app's JS bundle file, assuming that the resource name is
index.android.bundle
. If your app is using a different bundle name, then use the overloaded version of this method which allows specifying it. This method has the same resolution behavior as the Objective-C equivalent described above. -
getBundleUrl(String bundleName) - Returns the path to the most recent version of your app's JS bundle file, using the specified resource name (e.g.
index.android.bundle
). This method has the same resolution behavior as the Objective-C equivalent described above. -
overrideAppVersion(String appVersionOverride) - Sets the version of the application's binary interface, which would otherwise default to the Play Store version specified as the
versionName
in thebuild.gradle
. This should be called a single time, before the CodePush instance is constructed.