Android ACRA崩溃报告是否也需要服务许可?

Android ACRA崩溃报告是否也需要服务许可?,android,acra,Android,Acra,集成碰撞报告的步骤包括3个简单步骤: 1-ACRA 2-将以下内容添加到AndroidManifest.xml中 <!-- in the manifest, not the application tag --> <uses-permission android:name="android.permission.INTERNET" /> 应该是这样的。我认为这些说明有点过时了,AndroidManifest.xml从那时起就开始发展 我还想在我的中添加以下内容以使其正常

集成碰撞报告的步骤包括3个简单步骤:

1-ACRA

2-将以下内容添加到AndroidManifest.xml中

<!-- in the manifest, not the application tag -->
<uses-permission android:name="android.permission.INTERNET" />
应该是这样的。我认为这些说明有点过时了,AndroidManifest.xml从那时起就开始发展

我还想在我的
中添加以下内容以使其正常工作:

<service android:name="org.acra.sender.SenderService" />

问题:我是做错了什么,还是安卓系统的需求不断发展,而我做得正确


无论哪种方式,我都希望分享/记录我的步骤,以防其他人有同样的问题。

在ACRA的GitHub Wiki上可以找到更为最新的基本设置说明:

声明SenderService

ACRA(4.8+)使用SenderService发送报告,因此需要在您的AndroidManifest中对其进行配置

如果您正在使用清单合并,那么将自动为您包括SenderService。否则,您还需要配置发送报告的服务。它应该是这样的:


注意:android:process确保服务在:acra进程中运行。其目的是,该进程与应用程序的默认进程不同,以确保即使应用程序崩溃时处于关闭模式,也可以发送报告


很可能文档站点尚未更新GitHub站点上的最新更新。

如果您使用Android Studio和ACRA工件(即“如果您使用清单合并…”部分),将自动添加
元素。如果您正在使用Eclipse,或者没有使用Gradle或者没有使用ACRA AAR,您可能仍然需要手动添加它。太好了!新的说明确实有一些重要的区别,对我很有帮助。谢谢“应该是这样的”——差不多就是这样,至少如果你使用的是Android Studio。“我认为这些说明有点过时了”——我不知道,但它们确实针对Android Studio进行了优化。“AndroidManifest.xml从那时起就有了发展”——其实不是这样。你也可以把一些东西放在与ACRA相关的清单中(例如,
org.ACRA.CrashReportDialog
元素),但这些东西基本上都是选择性加入的。另外,FWIW,我去年晚些时候免费发布的,在Android Studio项目中设置ACRA。
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);
  }
}
<service android:name="org.acra.sender.SenderService" />
    <service
        android:name="org.acra.sender.SenderService"
        android:exported="false"
        android:process=":acra" />