蒲公英文档中心

蒲公英 -凯发k8地址

注册应用获取 app key

app key:唯一标识一个应用的 key,在蒲公英上的每一个 app 都有一个唯一的 app key,开发者可以在应用管理页面凯发k8地址首页查看。

下载 sdk

点击这里下载 android sdk

导入sdk

eclipse用户

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

android studio用户

添加代码到project下的build.gradle文件中:

allprojects {
    repositories {
        jcenter()
        maven { url "https://raw.githubusercontent.com/pgyer/mvn_repo_pgyer/master" }
    }
}

然后在module下的build.gradle文件中添加依赖即可:

dependencies {
    compile 'com.pgyersdk:sdk:2.8.1'
}

android studio用户除了可以使用以上方法集成sdk外,也可以使用和eclipse用户相同的方法来集成sdk。

配置 androidmanifest


 
 
  
 
 
 

 

    
    
    

注意: appid 即 app key

注意:android6.0以上需要应用内部动态申请读写权限。

上报 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();
        pgycrashmanager.register(this);
    }
}

在 androidmanifest.xml 注意修改 android:name=".pgyapplication"此处的名字对应上面继承 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);
        pgycrashmanager.register(this);
    }
}

3. 解除注册可以调用以下方法:

pgycrashmanager.unregister();

二、符号表配置(可选)

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

在后台配置符号表文件

上报 catch 异常

try  {
    // code
} catch (exception e) {
    pgycrashmanager.reportcaughtexception(mainactivity.this, e);            
}

摇一摇用户反馈

  1. 普通的应用在 activity 中添加如下代码即可
import com.pgyersdk.feedback.pgyfeedbackshakemanager;
import com.pgyersdk.update.updatemanagerlistener;
public class mainactivity extends activity {
    @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();
        // 自定义摇一摇的灵敏度,默认为950,数值越小灵敏度越高。
        pgyfeedbackshakemanager.setshakingthreshold(1000);
        // 以对话框的形式弹出,对话框只支持竖屏
        pgyfeedbackshakemanager.register(mainactivity.this);
        // 以activity的形式打开,这种情况下必须在androidmanifest.xml配置feedbackactivity
        // 打开沉浸式,默认为false
        // feedbackactivity.setbarimmersive(true);
        //pgyfeedbackshakemanager.register(mainactivity.this, true); 相当于使用dialog的方式;
        pgyfeedbackshakemanager.register(mainactivity.this, false);
    }
    @override
    protected void onpause() {
        // todo auto-generated method stub
        super.onpause();
        pgyfeedbackshakemanager.unregister();
    }
}
  1. 通过点击按钮的方式弹出反馈界面:
// 以对话框的形式弹出
pgyfeedback.getinstance().showdialog(mainactivity.this);
// 以activity的形式打开,这种情况下必须在androidmanifest.xml配置feedbackactivity
// 打开沉浸式,默认为false
// feedbackactivity.setbarimmersive(true);
pgyfeedback.getinstance().showactivity(mainactivity.this);

:使用activity弹出的方式,还需要添加以下代码:

  @override
    protected void onpause() {
        // todo auto-generated method stub
        super.onpause();
        pgyfeedbackshakemanager.unregister();
    }
  1. 自定义反馈界面对话框title
pgyerdialog.setdialogtitlebackgroundcolor("#ff0000");
pgyerdialog.setdialogtitletextcolor("#ffffff");
  1. 自定义反馈界面activity
// 设置顶部导航栏和底部bar的颜色
feedbackactivity.setbarbackgroundcolor("#ff0000");
// 设置顶部按钮和底部按钮按下时的反馈色
feedbackactivity.setbarbuttonpressedcolor("#ff0000");
// 设置颜色选择器的背景色
feedbackactivity.setcolorpickerbackgroundcolor("#ff0000");
  1. 自定义反馈信息(不限制增加的数量)
pgyfeedback.getinstance().setmoreparam("tao","value");

将在用户反馈的详情界面看到自定义的数据,如下图:

检查更新

  1. 默认对话框的版本更新检查
import com.pgyersdk.update.pgyupdatemanager;
pgyupdatemanager.setisforced(true); //设置是否强制更新。true为强制更新;false为不强制更新(默认值)。
pgyupdatemanager.register(this);
  1. 带回调的版本更新检查
import com.pgyersdk.javabean.appbean;
import com.pgyersdk.update.pgyupdatemanager;
import com.pgyersdk.update.updatemanagerlistener;
pgyupdatemanager.register(mainactivity.this,
new updatemanagerlistener() {
   @override
   public void onupdateavailable(final string result) {
     // 将新版本信息封装到appbean中
     final appbean appbean = getappbeanfromstring(result);
     new alertdialog.builder(mainactivity.this)
         .settitle("更新")
         .setmessage("")
         .setnegativebutton(
                 "确定",
                 new dialoginterface.onclicklistener() {
                     @override
                     public void onclick(
                             dialoginterface dialog,
                             int which) {
                         startdownloadtask(
                                 mainactivity.this,
                                 appbean.getdownload);
                     }
                 }).show();
   }
   @override
   public void onnoupdateavailable() {
   }
});
  1. 如果自己写下载方法,需要在下载完成后加上:
updatemanagerlistener.updatelocalbuildnumber(result);
  1. 解除注册可以调用一下方法:
pgyupdatemanager.unregister();

result的格式为:

混淆

-libraryjars libs/pgyer_sdk_x.x.jar
-dontwarn com.pgyersdk.**
-keep class com.pgyersdk.** { *; }