Android SDK 常见问题

上传的crash是那些?

Java运行时没有被Try Catched住从而导致JVM停止运行的异常。

什么是Java的还原符号文件?

在使用Progurad工具进行代码混淆时会可以生成的mapping文件。

为什么要上传Java还原符号文件?

产品发布的安装包一般是经过混淆处理的,这样就会导致上报的异常堆栈中的类名和方法名是一种不可读的方式(例如a.b()),我们需要通过Java还原符号表还原回真实的可读的类名和方法名(例如:MyClass.myMehtod())。

kill -9、exit等会被当成Crash上报吗?

不会。

try catch的异常会被当成Crash上报吗?

不会。

App无响应异常(ANR)能否捕获?

不能。

弹出反馈页面时截图为什么没有显示?

请确认在AndroidManifest.xml文件是否添加了android.permission.WRITE_EXTERNAL_STORAGE权限。

反馈页面截图怎么显示的不是当前的Activity界面?

当应用中使用了TabActivity、GroupActivity等包含多个Activity的集合类时,不要在其OnResume()添加PgyFeedbackShakeManager.register(MainActivity.this, Constants.APPID);在其中的子Activity的OnResume()添加即可。

游戏反馈上传的截图为什么是黑色的?

请在onDrawFrame方法中添加:

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

如何自定义更新提示对话框?

PgyUpdateManager.register(MainActivity.this, Constants.APPID,new UpdateManagerListener() {
    @Override
    public void onUpdateAvailable(String result) {
        // 弹出自定义对话框
    }
});

怎么样测试app的更新功能已经正常工作?

app集成sdk后打包上传到蒲公英,然后手机扫二维码安装,当同一个app有新的版本再次上传到蒲公英时,手机上打开以前安装的这个app就会提示有新版本更新。

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