2016-04-27 41 views

回答

11

你好,我在幾個月前也有同樣的問題,我自己解決它。希望我的回答會幫助你。

您需要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個不同的結構帳戶相同的包納姆

+0

我怎樣才能找到這些API密鑰? – lukle

+0

在您的結構儀表板中,您可以找到您的每個項目的API密鑰 –

+0

我只能看到我組織的api密鑰......我查找了我的組織中的其他項目,並且它們都指向清單中的相同API密鑰文件。你是如何爲每個項目設置不同的API密鑰的? – lukle

7

還有一個選項,您不需要創建多個組織。您可以使用Fabric.BuilderappIdentifier(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創建項目)非常重要。

相關問題