Overview

Analytics Kit predefines rich analysis models to help you easily understand user behavior and gain in-depth insights into users, products, and content. As such, you can carry out data-driven operations and make informed decisions about app marketing and product optimization.
Analytics Kit implements the following functions using data collected from apps:

What You Will Create

In this codelab, you will create a demo app based on the provided demo project. After creating a demo app, you will be able to:

What You Will Learn

In this codelab, you will learn how to:

Hardware Requirements

Software Requirements

Required Knowledge

To integrate Analytics Kit, you must complete the following preparations:

For details, please refer to Preparations.
  1. Sign in to AppGallery Connect and click My projects.
  2. Find your project and select the app that needs to integrate the Analytics SDK.
  3. Select any menu under HUAWEI Analytics and click Enable Analytics service. (You must have the app management permission to perform this operation.)
  4. On the Project access settings page displayed, set the data processing location and complete other settings. Then click Finish.
  5. Download the configuration file.
  6. In HUAWEI DevEco Studio, switch to the Project view and copy the agconnect-services.json file to the entry directory.

Adding SDK Dependencies

  1. Add the AppGallery Connect dependency in the project-level build.gradle file.
    a) Open the project-level build.gradle file.

    b) Add the AppGallery Connect dependency to dependencies.
    dependencies { classpath 'com.huawei.agconnect:agcp-harmony:1.3.0.300' }
  2. Add the Analytics Kit dependency to the build.gradle file in the entry directory.
    a) Open the build.gradle file in the entry directory.

    b) Add the build dependency to dependencies.
    dependencies { implementation 'com.huawei.hms:hianalytics-harmony:6.10.0.300' }
    c) Add the AppGallery Connect plugin configuration.
    Add the following information under apply plugin: 'com.huawei.ohos.hap' in the file header:
    apply plugin: 'com.huawei.agconnect'
  3. Click Sync Now in the upper-right corner or go to File > Sync Project with Gradle Files to build a project.
  4. Click Terminal, enter the CLI, and run the following command in the entry directory to install the SDK:
    npm install @hw-hmscore/analytics-sdk-harmony

Configuring Obfuscation Scripts

Before building the app, configure the obfuscation configuration file to prevent the Analytics SDK from being obfuscated.
Open the obfuscation configuration file proguard-rules.pro in the app-level directory, and add configurations to exclude the Analytics SDK and SDKs it depends on from being obfuscated.

-ignorewarnings -keep class com.huawei.agconnect.**{*;} -keep class com.huawei.hms.analytics.**{*;} -keep class com.huawei.hms.push.**{*;}

In this section, you will try to build a demo with the question answering function to learn how to use the main APIs of Analytics Kit. We have prepared the code for you, meaning you only need to follow the instructions in each step below to learn how to use Analytics Kit to report the events you are interested in, such as answering questions, calculating scores, and setting user attributes.

Download

Modifying the config.json File

  1. Go to the entry > src > main directory and add the js configuration to the config.json file.
    "module": { "js": [ { "name": "default", "window": { "designWidth": 750, "autoDesignWidth": false }, "pages": [ "pages/index/index", "pages/setting/setting", "pages/result/result" ] } ], }
  2. Declare the AppGallery Connect provider and AnalyticsServiceAbility under abilities.
    "module": { "abilities": [ { ...... }, { "permissions": [ "com.huawei.agconnect.core.DataAbilityShellProvider.PROVIDER" ], "name": "com.huawei.agconnect.core.provider.AGConnectInitializeAbility", "type": "data", "uri": "dataability:// com.example.myapplication.AGConnectInitializeAbility" }, { "name": "com.huawei.hms.analytics.AnalyticsServiceAbility", "icon": "$media:icon", "visible":false, "type": "service" }, ] }

    Your app is so far loaded with the required functions. Next, you will use Analytics Kit to report the events that interest you.

Initializing the SDK

  1. Import the Analytics SDK.
    import analytics from '@hw-hmscore/analytics-sdk-harmony';
  2. Create a global variable analytics in app.js.
    globalData: { analytics: null },
  3. Initialize the Analytics SDK in onCreate of app.js to obtain a HiAnalytics instance.
    Replace bundleName in the following onCreate method with bundleName of your app.
    // TODO: Replace the following code with the configuration of your app. onCreate() { let bundleName = 'com.huawei.harmonyos.demo'; analytics.getInstance(bundleName); },

For details about APIs, please refer to the Analytics Kit API Reference.

Start the app in the emulator and trigger event reporting as instructed.


  1. Sign in to AppGallery Connect and click My projects.
  2. Find your project, and click the app to view its data.
  3. Go to HUAWEI Analytics > Overview > Real-time overview.
  4. Check the data. For details, please refer to the Analytics Kit operation guide.
  1. Run the following command to enable the debug mode on a HarmonyOS device:
    hdc shell setprop debug.huawei.hms.analytics.hap <package_name>

    After the debug mode is enabled, all triggered events are reported to the App debugging page in real time.

  2. View the reported debugging data.

    To disable the debug mode, run the following command:

    hdc shell setprop debug.huawei.hms.analytics.hap .none.

FAQs

How should I perform initialization?

Initialize the Analytics SDK in the main thread by using the onCreate method of app.js. Otherwise, the processing of automatically collected lifecycle events may be affected.

How does Analytics Kit identify users?

Analytics Kit identifies users through an Anonymous Application ID (AAID).

When will the AAID be reset? How does Analytics Kit collect user statistics after AAID reset?

The AAID will be reset in the following scenarios:

What permissions are required for using Analytics Kit?

Analytics Kit requires the ohos.permission.INTERNET permission, which has been preset in Analytics Kit. You do not need to apply for this permission.

Why can't I view the analysis result of the data reported during the test?

  1. When app debugging is disabled, you can only view some analysis results on the Real-time overview page. Analysis results on other pages such as Event analysis and Launch analysis are available only after the corresponding data is processed on the next day.
  2. When app debugging is enabled, the reported test data will not be analyzed and can only be viewed on the App debugging page.

Well done. You have successfully completed this codelab and learned how to:

For more information, please click the following link:

Related documents
To download the sample code, please click the button below:

Download

Code copied