Laws such as the Personal Information Protection Law (PIPL), the Data Security Law, and the Network Security Law require app developers to protect the personal information of end users. Do not collect or use personal information in violation of these regulations. This guide explains how to use the Cloud Release SDK compliantly to protect the personal information and rights of your end users.
1. System permissions requested by the Cloud Release SDK
Permission | Required | Purpose |
INTERNET | Yes | This basic permission lets the SDK connect to the internet to provide the Cloud Release service. |
REQUEST_INSTALL_PACKAGES | Yes | Lets the SDK call the system to install the application after the download is complete. |
ACCESS_NETWORK_STATE ACCESS_WIFI_STATE | Yes | Lets the SDK get the application's current network state. |
2. Cloud Release SDK features and related personal information
Feature | Personal information field collected | Purpose of collection | Configuration and example |
Client update retrieval (Basic feature) | Device information (including operating system version and device model) | Used for release policies. | Basic feature. Required information. |
3. Cloud Release SDK configuration for optional personal information fields
Optional personal information field | Purpose of collection | Configuration and example |
Not applicable | Not applicable | Not applicable |
4. Compliant initialization configuration for the Cloud Release SDK
/**
* Initializes the Cloud Release SDK.
* @param context The application context
* @param appKey The EMAS AppKey
* @param appSecret The EMAS AppSecret
*/
void init(Application context, String appKey, String appSecret);Ensure the user agrees to the Privacy Policy before calling the Cloud Release SDK initialization method.
Code example
public class MainApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
Utils.initConfig(this);
initUpdate();
}
private void initUpdate() {
// 1. Initialize UpdateDataSource.
UpdateDataSource.getInstance().init(this, Utils.sAppkey, Utils.sAppSecret, Utils.sChannelID);
// 2. Initialize UpdateRuntime.
UpdateRuntime.init();
// 3. Set a custom dialog box (this initializes ApkUpdater).
SharedPreferences sp = getSharedPreferences("settings", Context.MODE_PRIVATE);
final boolean customDialog = sp.getBoolean("custom_dialog", false);
MainActivity.setCustomDialog(this, customDialog);
}
}