luk*_*kle 10 android gradle crashlytics twitter-fabric
我正在开发一个Android应用程序,我想在Crashlytics/Fabric(调试和发布)中有两个不同的项目.
我知道这可以通过两个不同的包名来实现,但在我的情况下,这两种构建类型的包名必须相同.
是否有可能有两个具有相同包名称的碰撞项目?
小智 18
你好,我几个月前也有同样的问题,我自己解决了.希望我的回答能帮到你.
您需要为组织crashlyticsApiKey中的每个项目提供2个不同的组织.
然后在您的build.gradle文件上定义manifestPlaceHolders
debug {
manifestPlaceholders = [crashlyticsApiKey: 'your_api_key_for_debug_project_here']
}
release {
manifestPlaceholders = [crashlyticsApiKey: 'your_api_key_for_release_project_here']
}
Run Code Online (Sandbox Code Playgroud)
然后,您将此变量放在AndroidManifest.xml文件的元数据中
<meta-data
android:name="io.fabric.ApiKey"
android:value="${crashlyticsApiKey}" />
Run Code Online (Sandbox Code Playgroud)
这就是全部,现在构建您的项目以进行重新调试和调试,您将看到您的应用程序将注册2个不同的结构帐户与相同的包nam
Ste*_*ack 11
还有一个选项,您无需创建多个组织.您可以使用Fabric.Builder用appIdentifier(java.lang.String appIdentifier).
唯一要做的就是从文档中替换Crashlytics初始化
Fabric.with(this, new Crashlytics());
Run Code Online (Sandbox Code Playgroud)
用这样的东西:
final String trackingId = BuildConfig.APPLICATION_ID + ".tv";
Fabric fabric = new Fabric.Builder(this).kits(new Crashlytics()).appIdentifier(trackingId).build();
Fabric.with(fabric);
Run Code Online (Sandbox Code Playgroud)
第二个片段使用项目APPLICATION_ID(包名称)并向其添加".tv".
注意:当您以这种方式跟踪崩溃时,Crashlytics不会自行创建项目.手动创建项目(或者已经从具有相同包名称的另一个App创建项目)非常重要.
| 归档时间: |
|
| 查看次数: |
3605 次 |
| 最近记录: |