蒲公英文档中心

Android SDK 集成指南

注册应用获取 App ID

App ID:唯一标识一个应用的 ID,在蒲公英上的每一个 App 都有一个唯一的 App ID,开发者可以在应用管理页面首页查看。

App ID

下载SDK

下载蒲公英 Android SDK(包含异常上报,在线更新,摇一摇反馈等功能)。

将 jar 包复制到工程的 libs 目录下面。

加入libs目录

配置 AndroidManifest

<!-- 必选-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 获取网络状态 -->
<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" /> <!-- 获取MAC地址-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <!-- 读写sdcard,storage等等 -->
<!-- 可选-->
<uses-permission android:name="android.permission.READ_LOGS" /> <!-- 获取logcat日志 -->

示例代码截图

示例代码

上报 Crash 异常

一、注册Crash接口(必选)

  1. 在 application 中集成,可以有机会捕捉更多的异常(推荐)
import com.pgyersdk.crash.PgyCrashManager;
import android.app.Application;

public class PgyApplication extends Application {

    @Override
    public void onCreate() {
        // TODO Auto-generated method stub
        super.onCreate();

        String appId = "myappid";  //蒲公英注册或上传应用获取的AppId
        PgyCrashManager.register(this,appId);
    }
}

在 AndroidManifest.xml 注意修改 android:name=".PgyApplication"此处的名字对应上面继承 Application 的类名

<application
    android:name=".PgyApplication"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.pgyer.pgyersdk.test.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

2. 在 activity 中集成

import com.pgyersdk.crash.PgyCrashManager;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String appId ="myappid"; //蒲公英注册或上传应用获取的AppId
        PgyCrashManager.register(this,appId);
    }
}

二、符号表配置(可选)

通过 progurad 工具混淆时,工程目录下会自动生成符号表文件 mapping.txt

符号表

在后台配置符号表文件

符号表

摇一摇用户反馈

  1. 普通的应用在 Activity 中添加如下代码即可
import com.pgyersdk.feedback.PgyFeedbackShakeManager;

public class MainActivity extends Activity {

    String appId ="myappid";//蒲公英注册或上传应用获取的AppId
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    protected void onResume() {
        // TODO Auto-generated method stub
        super.onResume();
        PgyFeedbackShakeManager.register(MainActivity.this, appId);
    }

    @Override
    protected void onPause() {
        // TODO Auto-generated method stub
        super.onPause();
        PgyFeedbackShakeManager.unregister();
    }
}
  1. 游戏还需要在 GLSurfaceView.Renderer 这个类的 public void onDrawFrame(final GL10 gl) 的方法中添加以下代码
public void onDrawFrame(GL10 gl) {
    PgyFeedbackShakeManager.setGLSurface(true);
    GLSurfaceUtils.getInstance().takeScreenShot(gl);
}

检查更新

在 activity 中添加如下代码

import com.pgyersdk.update.PgyUpdateManager;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        String appId ="myappid"; //蒲公英注册或上传应用获取的AppId
        PgyUpdateManager.register(this, appId);
    }
}