我正在開發一個Android應用程序,我想在Crashlytics/Fabric(調試和發佈)中有兩個不同的項目。Android上的Fabric/Crashlytics - 如何讓兩個不同的crashlytics項目具有相同的包名?
我知道這是可能的,有兩個不同的包名稱,但在我的情況下,這兩個構建類型的包名稱必須相同。
是否有可能讓兩個crashlytics項目具有相同的包名?
我正在開發一個Android應用程序,我想在Crashlytics/Fabric(調試和發佈)中有兩個不同的項目。Android上的Fabric/Crashlytics - 如何讓兩個不同的crashlytics項目具有相同的包名?
我知道這是可能的,有兩個不同的包名稱,但在我的情況下,這兩個構建類型的包名稱必須相同。
是否有可能讓兩個crashlytics項目具有相同的包名?
你好,我在幾個月前也有同樣的問題,我自己解決它。希望我的回答會幫助你。
您需要2個組織針對您的每個架構項目使用不同的crashlyticsApiKey
。
然後在你的build.gradle
文件,你會定義manifestPlaceHolders
debug {
manifestPlaceholders = [crashlyticsApiKey: 'your_api_key_for_debug_project_here']
}
release {
manifestPlaceholders = [crashlyticsApiKey: 'your_api_key_for_release_project_here']
}
然後你會穿上元數據這個變量在您AndroidManifest.xml
文件
<meta-data
android:name="io.fabric.ApiKey"
android:value="${crashlyticsApiKey}" />
這一切,現在建項目無論是關閉和調試,你會看到你的應用程序將註冊2個不同的結構帳戶相同的包納姆
還有一個選項,您不需要創建多個組織。您可以使用Fabric.Builder和appIdentifier(java.lang.String appIdentifier)
。
唯一要做的事情就是從文檔
Fabric.with(this, new Crashlytics());
像這樣的東西更換Crashlytics初始化:
final String trackingId = BuildConfig.APPLICATION_ID + ".tv";
Fabric fabric = new Fabric.Builder(this).kits(new Crashlytics()).appIdentifier(trackingId).build();
Fabric.with(fabric);
第二個片段使用項目APPLICATION_ID
(包名),並增加了「 .tv「。
注意:當您以這種方式跟蹤崩潰時,Crashlytics不會自行創建項目。手動創建項目(或者已經從另一個具有相同包名的App創建項目)非常重要。
我怎樣才能找到這些API密鑰? – lukle
在您的結構儀表板中,您可以找到您的每個項目的API密鑰 –
我只能看到我組織的api密鑰......我查找了我的組織中的其他項目,並且它們都指向清單中的相同API密鑰文件。你是如何爲每個項目設置不同的API密鑰的? – lukle