用于集成崩溃报告的ACRA文档包含3个简单步骤:
2 - 将以下内容添加到AndroidManifest.xml中
<!-- in the manifest, not the application tag -->
<uses-permission android:name="android.permission.INTERNET" />
Run Code Online (Sandbox Code Playgroud)
和
<application ... android:name=".MyApplication">
...
</application>
Run Code Online (Sandbox Code Playgroud)
3 - 创建一个与上面的'MyApplication'同名的新java类:
import org.acra.*;
import org.acra.annotation.*;
@ReportsCrashes(formUri = "http://www.yourselectedbackend.com/reportpath")
public class MyApplication extends Application {
@Override
public void onCreate() {
// The following line triggers the initialization of ACRA
super.onCreate();
ACRA.init(this);
}
}
Run Code Online (Sandbox Code Playgroud)
那应该是它.我认为指令有点过时,AndroidManifest.xml从那时起已经发展.
我还需要在我<application> ... </application>的内部添加以下功能:
<service android:name="org.acra.sender.SenderService" />
Run Code Online (Sandbox Code Playgroud)
问题:我做错了什么或Android的需求是否已经发展并且我正确地做到了?
无论哪种方式,我也想分享/记录我的步骤,以防其他人遇到同样的问题.
可以在ACRA的GitHub Wiki上找到更新的基本设置说明:https://github.com/ACRA/acra/wiki/BasicSetup
声明SenderService
ACRA(4.8+)使用SenderService发送报告,因此需要在AndroidManifest中进行配置.
如果您使用清单合并,则会自动为您包含SenderService.否则,您还需要配置将发送报告的服务.它应该看起来像:
<service
android:name="org.acra.sender.SenderService"
android:exported="false"
android:process=":acra" />
Run Code Online (Sandbox Code Playgroud)
注意android:process确保服务在:acra进程中运行.目的是该流程与应用程序的默认流程不同,以确保即使您的应用程序在崩溃时处于关闭模式也可以发送报告.
文档站点可能尚未使用GitHub站点上的最新更新进行更新.
| 归档时间: |
|
| 查看次数: |
487 次 |
| 最近记录: |