我想知道Google Play如何能够捕获它所拥有的应用程序中出现的错误列表并将其显示给开发人员?
背景幕: 我们正在尝试复制像谷歌商店这样的应用程序? 我们应该通过我们的应用程序维护企业应用程序列表。我们希望通过我们的应用程序实现一个异常捕获框架,该框架能够通过我们的应用程序列表捕获异常并显示并存储在后端。
答案 0 :(得分:2)
我认为Android应用程序与Google Play市场有关,因此当发生异常时,会将崩溃报告发送给他们。
一种可能的解决方案是让您的用户实施某种类型的库,以便在您的市场上发布应用。该库除了捕获异常并将崩溃报告发送到您的服务器(类似ACRA之外)之外什么都不做。
尽管作为一名开发人员,我认为这种方法并不好,除非你向开发人员提供非常有前景的东西(如应用程序可见性,促销等)
答案 1 :(得分:0)
我不知道Google Play是如何做到的,但根据我的需要,我创建了自己的java.lang.Thread.UncaughtExceptionHandler
:
class MyUncaughtExceptionHandler implements UncaughtExceptionHandler {
private UncaughtExceptionHandler mDefaultUncaughtExceptionHandler;
MyUncaughtExceptionHandler() {
mDefaultUncaughtExceptionHandler = Thread.getDefaultUncaughtExceptionHandler();
}
@Override
public void uncaughtException(Thread aThread, Throwable aThrowable) {
// do your stuff
mDefaultUncaughtExceptionHandler.uncaughtException(aThread, aThrowable);
}
}
并在android.app.Application#onCreate
注册。
@Override
public void onCreate() {
super.onCreate();
Thread.setDefaultUncaughtExceptionHandler(new UncaughtExceptionHandler());
}