Cloud Release SDK compliance guide (Android)

更新时间:
复制 MD 格式
Note

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);
Important
  • 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);
    }

}