1

集成蒲公英 Android SDK

2

获取 FrontJS Token 和 Api key

3

在 Application 中集成

4

添加权限

5

上报异常和检查更新

集成SDK之前请注意,合规三步走:

1.您需要确保App有《隐私政策》,并且在用户首次启动App时就弹出《隐私政策》取得用户同意。

2.请您务必告知用户您选择蒲公英SDK服务,并在《隐私政策》中增加如下参考条款: “我们的产品集成蒲公英SDK,蒲公英SDK需要收集您的设备Mac地址、唯一设备识别码以提供统计分析服务。

3.请您务必确保用户同意《隐私政策》之后,再初始化蒲公英SDK。

集成蒲公英 Android SDK 有两种方式:

方式一:

  1. 下载蒲公英 Android SDK 并将 jar 包复制到工程的 libs 目录下面

下载最新版本 SDK V4.2.4

更多 SDK 版本

Android SDK

  1. 在项目 app/build.gradle 中添加以下代码
repositories {
    flatDir {
        dirs 'libs'   // jar目录
    }
}
...  

dependencies {
     ...
    implementation files('libs/pgy_analytics_sdk.jar')
}                        

方式二:

  1. 在项目下 build.gradle 中添加
allprojects {
    repositories {
        ...
            maven { url "https://frontjs-static.pgyer.com/dist/sdk/pgyersdk" }  //主力仓库
            maven { url "https://raw.githubusercontent.com/Pgyer/analytics/master" }  //备用仓库(主力仓库下载不下来使用)
    }
}
  1. 然后在 app/build.gradle 中添加
dependencies {
                    ...
            implementation 'com.pgyer:analytics:4.2.0'
    }                   

下一步:获取 FrontJS Token 和 Api key

获取 FrontJS Token 和 Api key :

  1. 找到蒲公英上需要集成 Android SDK 的应用「 应用监控 」,然后点击“立即创建”

创建 FrontJS 项目

  1. 获取如下图所示的 FrontJS Token 和 Api key

FrontJS Token 和 Api key

下一步:在 Application 中集成

在 Application 中集成 :

import android.app.Application;
import com.pgyer.pgyersdk.PgyerSDKManager;
public class {当前应用的application} extends Application {

    @Override
    public void onCreate() {
        super.onCreate();
    }


  @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        //在attachBaseContext方法中调用初始化sdk
        initPgyerSDK(this);
    }

    /**
     *  初始化蒲公英SDK
     * @param application
     */
    private static void initPgyerSDK( {当前应用的application} application){
         new PgyerSDKManager.Init()
                  .setContext(application) //设置上下问对象
                            .start()
    }
}

下一步:添加权限

添加权限 :

在 AndroidManifest.xml 修改 android:name=“{当前应用的application}”(此处的名字对应继承上面 Application 的类名),并添加权限

<!-- 必选-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 获取网络状态 -->
<uses-permission
        android:name="android.permission.READ_PRIVILEGED_PHONE_STATE"
        tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.INTERNET" /> <!-- 网络通信-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />  <!-- 获取设备信息 -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- 获取网络信息权限-->

<!-- 用户手机设置中允许未知来源安装包安装状态为关;-->
<!-- Android8.0 以后,如果要安装 apk 需要额外添加权限:-->
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />

<application
    android:name=""{当前应用的application}"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >

    <meta-data
            android:name="PGYER_API_KEY"
            android:value="蒲公英后台申请的apikey"></meta-data>
        <meta-data
            android:name="PGYER_FRONTJS_KEY"
            android:value="蒲公英后台申请的frontJSToken"></meta-data>

        <!--添加新版本检测-->
        <meta-data
            android:name="PGYER_FEATURE_CHECK_UNPDATE"
            android:value="true"></meta-data>

</application>

下一步:主动上报异常

手动上报异常:

PgySDK

import com.pgyer.pgyersdk.PgyerSDKManager;
...
PgyerSDKManager.reportException(Exception e);                         

手动调用检查更新:

import com.pgyer.pgyersdk.PgyerSDKManager;
...
PgyerSDKManager.checkSoftwareUpdate(Activity act);