西西軟件園多重安全檢測下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

蒲公英Android安卓SDK

V2.4.1官方最新版
  • 蒲公英Android安卓SDKV2.4.1官方最新版
  • 軟件大小:3.7M
  • 更新時(shí)間:2016-07-25 18:09
  • 軟件語言:中文
  • 軟件廠商:
  • 軟件類別:國產(chǎn)軟件 / 免費(fèi)軟件 / 編程輔助
  • 軟件等級:4級
  • 應(yīng)用平臺:WinAll
  • 官方網(wǎng)站:https://www.pgyer.com/
  • 應(yīng)用備案:
好評:50%
壞評:50%

軟件介紹

蒲公英Android安卓SDK是一款蒲公英應(yīng)用內(nèi)測專家的安卓SDK,我們的SDK,你們自己的風(fēng)格。蒲公英SDK為你準(zhǔn)備了多種自定義的方式,讓你手機(jī)反饋的方式更加貼近你的產(chǎn)品。

Android SDK 集成指南

冊應(yīng)用獲取 App ID

App ID:唯一標(biāo)識一個(gè)應(yīng)用的 ID,在蒲公英上的每一個(gè) App 都有一個(gè)唯一的 App ID,開發(fā)者可以在應(yīng)用管理頁面首頁查看。

導(dǎo)入SDK

Eclipse用戶

下載蒲公英 Android SDK(包含異常上報(bào),在線更新,搖一搖反饋等功能)。

將 jar 包復(fù)制到工程的 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.4.0' }

Android Studio工程示例代碼

Android Studio用戶除了可以使用以上方法集成SDK外,也可以使用和Eclipse用戶相同的方法來集成SDK。

配置 AndroidManifest

<!--必選--> <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/><!--獲取網(wǎng)絡(luò)狀態(tài)--> <uses-permissionandroid:name="android.permission.INTERNET"/><!--網(wǎng)絡(luò)通信--> <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/><!--獲取設(shè)備信息--> <uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/><!--獲取MAC地址--> <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/><!--讀寫sdcard,storage等等--> <uses-permissionandroid:name="android.permission.RECORD_AUDIO"/><!--允許程序錄制音頻--> <!--可選--> <uses-permissionandroid:name="android.permission.READ_LOGS"/><!--獲取logcat日志--> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme"> <!--可選--> <activityandroid:name="com.pgyersdk.activity.FeedbackActivity"/> <!--必選--> <meta-data android:name="PGYER_APPID" android:value="4b6e8877dfcc2462bedb37dcf66b6d87"> </meta-data> </application>

上報(bào) Crash 異常

一、注冊Crash接口(必選)

在 application 中集成,可以有機(jī)會捕捉更多的異常(推薦)

importcom.pgyersdk.crash.PgyCrashManager; importandroid.app.Application; publicclassPgyApplicationextendsApplication{ @Override publicvoidonCreate(){ //TODOAuto-generatedmethodstub super.onCreate(); PgyCrashManager.register(this); } }

在 AndroidManifest.xml 注意修改 android:name=".PgyApplication"此處的名字對應(yīng)上面繼承 Application 的類名

<application android:name=".PgyApplication" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme"> </application>

2. 在 activity 中集成

importcom.pgyersdk.crash.PgyCrashManager; publicclassMainActivityextendsActivity{ @Override protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); PgyCrashManager.register(this); } }

3. 解除注冊可以調(diào)用一下方法:

PgyCrashManager.unregister();

二、符號表配un置(可選)

通過 progurad 工具混淆時(shí),工程目錄下會自動生成符號表文件 mapping.txt

在后臺配置符號表文件

上報(bào) catch 異常

try { } catch(Exceptione) { PgyCrashManager.reportCaughtException(MainActivity.this,e); }

搖一搖用戶反饋

普通的應(yīng)用在 Activity 中添加如下代碼即可

importcom.pgyersdk.feedback.PgyFeedbackShakeManager; publicclassMainActivityextendsActivity{ @Override protectedvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override protectedvoidonResume(){ //TODOAuto-generatedmethodstub super.onResume(); //自定義搖一搖的靈敏度,默認(rèn)為950,數(shù)值越小靈敏度越高。 PgyFeedbackShakeManager.setShakingThreshold(1000); //以對話框的形式彈出 PgyFeedbackShakeManager.register(MainActivity.this); //以Activity的形式打開,這種情況下必須在AndroidManifest.xml配置FeedbackActivity //打開沉浸式,默認(rèn)為false //FeedbackActivity.setBarImmersive(true); PgyFeedbackShakeManager.register(MainActivity.this,false); } @Override protectedvoidonPause(){ //TODOAuto-generatedmethodstub super.onPause(); PgyFeedbackShakeManager.unregister(); } }

游戲還需要在 GLSurfaceView.Renderer 這個(gè)類的 public void onDrawFrame(final GL10 gl) 的方法中添加以下代碼

publicvoidonDrawFrame(GL10gl){ PgyFeedbackShakeManager.setGLSurface(true); GLSurfaceUtils.getInstance().takeScreenShot(gl); }

通過點(diǎn)擊按鈕的方式彈出反饋界面:

//以對話框的形式彈出 PgyFeedback.getInstance().show(MainActivity.this); //以Activity的形式打開,這種情況下必須在AndroidManifest.xml配置FeedbackActivity //打開沉浸式,默認(rèn)為false //FeedbackActivity.setBarImmersive(true); PgyFeedback.getInstance().showActiivty(MainActivity.this);

自定義反饋界面對話框title

PgyerDialog.setDialogTitleBackgroundColor("#ff0000"); PgyerDialog.setDialogTitleTextColor("#ffffff");

自定義反饋界面Activity

//設(shè)置頂部導(dǎo)航欄和底部bar的顏色 FeedbackActivity.setBarBackgroundColor("#ff0000"); //設(shè)置頂部按鈕和底部按鈕按下時(shí)的反饋色 FeedbackActivity.setBarButtonPressedColor("#ff0000"); //設(shè)置顏色選擇器的背景色 FeedbackActivity.setColorPickerBackgroundColor("#ff0000");

自定義反饋信息(不限制增加的數(shù)量)

PgyFeedback.getInstance().setMoreParam("tao","value");

將在用戶反饋的詳情界面看到自定義的數(shù)據(jù),如下圖:

檢查更新

默認(rèn)對話框的版本更新檢查

PgyUpdateManager.register(this);

帶回調(diào)的版本更新檢查

PgyUpdateManager.register(MainActivity.this, newUpdateManagerListener(){ @Override publicvoidonUpdateAvailable(finalStringresult){ //將新版本信息封裝到AppBean中 finalAppBeanappBean=getAppBeanFromString(result); newAlertDialog.Builder(MainActivity.this) .setTitle("更新") .setMessage("") .setNegativeButton( "確定", newDialogInterface.OnClickListener(){ @Override publicvoidonClick( DialogInterfacedialog, intwhich){ startDownloadTask( MainActivity.this, appBean.getDownloadURL()); } }).show(); } @Override publicvoidonNoUpdateAvailable(){ } });

解除注冊可以調(diào)用一下方法:

PgyUpdateManager.unregister();

result的格式為:

混淆

-libraryjarslibs/pgyer_sdk_x.x.jar -dontwarncom.pgyersdk.** -keepclasscom.pgyersdk.**{*;}

Android SDK 常見問題

傳的crash是那些?

Java運(yùn)行時(shí)沒有被Try Catched住從而導(dǎo)致JVM停止運(yùn)行的異常。

什么是Java的還原符號文件?

在使用Progurad工具進(jìn)行代碼混淆時(shí)會可以生成的mapping文件。

為什么要上傳Java還原符號文件?

產(chǎn)品發(fā)布的安裝包一般是經(jīng)過混淆處理的,這樣就會導(dǎo)致上報(bào)的異常堆棧中的類名和方法名是一種不可讀的方式(例如a.b()),我們需要通過Java還原符號表還原回真實(shí)的可讀的類名和方法名(例如:MyClass.myMehtod())。

kill -9、exit等會被當(dāng)成Crash上報(bào)嗎?

不會。

try catch的異常會被當(dāng)成Crash上報(bào)嗎?

不會。

App無響應(yīng)異常(ANR)能否捕獲?

不能。

彈出反饋頁面時(shí)截圖為什么沒有顯示?

請確認(rèn)在AndroidManifest.xml文件是否添加了android.permission.WRITE_EXTERNAL_STORAGE權(quán)限。

反饋頁面截圖怎么顯示的不是當(dāng)前的Activity界面?

當(dāng)應(yīng)用中使用了TabActivity、GroupActivity等包含多個(gè)Activity的集合類時(shí),不要在其OnResume()添加PgyFeedbackShakeManager.register(MainActivity.this, Constants.APPID);在其中的子Activity的OnResume()添加即可。

游戲反饋上傳的截圖為什么是黑色的?

請?jiān)趏nDrawFrame方法中添加:

PgyFeedbackShakeManager.setGLSurface(true); GLSurfaceUtils.getInstance().takeScreenShot(gl);

如何自定義更新提示對話框?

PgyUpdateManager.register(MainActivity.this, Constants.APPID,new UpdateManagerListener() {    @Override    public void onUpdateAvailable(String result) {        // 彈出自定義對話框    } });

怎么樣測試app的更新功能已經(jīng)正常工作?

app集成sdk后打包上傳到蒲公英,然后手機(jī)掃二維碼安裝,當(dāng)同一個(gè)app有新的版本再次上傳到蒲公英時(shí),手機(jī)上打開以前安裝的這個(gè)app就會提示有新版本更新。

備注:集成sdk后,修改AndroidManifest.xml的android:versionCode值小于上傳到蒲公英上的最新版本的android:versionCode值,就可以立即測試更新功能。

為什么我下載了歷史版本,打開應(yīng)用不會提示更新?

1.有可能你的歷史版本沒有集成sdk的更新功能。

2.你沒有修改versioncode,僅僅依靠自增的buildno來控制版本,這樣你是沒有辦法立馬檢測到新版本的,因?yàn)閟dk并無法知道你下載的apk對應(yīng)的buildno,所以本地只能保存最新的buildno,當(dāng)你有新的版本再次上傳時(shí),sdk就可以根據(jù)buildno來對比檢測到新版本。

自定義更新安裝apk時(shí)提示“解析包出錯(cuò)”

public void onUpdateAvailable(final String result) {  // 調(diào)用sdk的默認(rèn)下載,apk下載地址為result字符串中downloadURL對應(yīng)的值  String downloadUrl = "apk下載地址";  startDownloadTask(MainActivity.this,downloadUrl); }

請檢查apk下載地址是否正確,這里不是apk的單頁短鏈接而是result里面的downloadURL對應(yīng)的值。

發(fā)表評論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評論 > 字?jǐn)?shù): 0/500

TOP
軟件下載