当我试图与建设项目value的meta-data标签为字符串参考,crashlytics失败,以下错误:
Crashlytics found an invalid API key: @string/crashlytics.
Check the Crashlytics plugin to make sure that the application has been added successfully!
Contact support@crashlytics.com for assistance.
Run Code Online (Sandbox Code Playgroud)
不行
<meta-data
android:name="com.crashlytics.ApiKey"
android:value="@string/crashlytics"/>
Run Code Online (Sandbox Code Playgroud)
作品
<meta-data
android:name="com.crashlytics.ApiKey"
android:value="1234567890..."/>
Run Code Online (Sandbox Code Playgroud)
我想里面定义不同的密钥string.xml对不同的productFlavors我的Android项目.
写完崩溃支持后:
目前我们只能在构建时评估AndroidManifest.xml,因此我们不查看任何字符串资源,因此我们只支持硬编码字符串.我肯定会与你感兴趣的团队分享这个,所以我们可以在将来的版本中考虑支持这个.
android gradle crashlytics android-studio android-gradle-plugin
已更新至Android Studio 1.4 Preview和新SDK,现在我获得了:
ERROR - Crashlytics Developer Tools error.
java.lang.IllegalArgumentException: Crashlytics found an invalid API key: null.
Run Code Online (Sandbox Code Playgroud)
我已经卸载了Fabric,再次安装了它,并从中更新了Crashlytics
任何想法我应该做什么?
这是我的build.gradle:http://pastebin.com/VPHpRJte
这是我的androidManifest:http://pastebin.com/Nmdeasx8
我在清单中的API密钥:
android:name="com.crashlytics.ApiKey"
android:value="c13e89xxxxxxxxxxxxx1054b4a
Run Code Online (Sandbox Code Playgroud)
在https://fabric.io/settings/organizations/中:
c13e89xxxxxxxxxxxxxxxxxbf1054b4a
Run Code Online (Sandbox Code Playgroud) 我有一个Android应用程序,具有以下产品风格:
productFlavors {
local {
}
development {
}
production {
}
}
Run Code Online (Sandbox Code Playgroud)
然后在我的底部有以下内容build.grade:
File crashlyticsProperties = new File("${project.projectDir.absolutePath}/fabric.properties")
android.applicationVariants.all { variant ->
def variantSuffix = variant.name.capitalize()
def generateResourcesTask = project.tasks.getByName("fabricGenerateResources${variantSuffix}")
def generatePropertiesTask = task("fabricGenerateProperties${variantSuffix}") << {
Properties properties = new Properties()
properties.put("apiSecret", WHAT_GOES_HERE)
properties.put("apiKey", WHAT_GOES_HERE)
PropertiesUtils.injectPropertyInFile(crashlyticsProperties, properties, "")
}
generateResourcesTask.dependsOn generatePropertiesTask
}
Run Code Online (Sandbox Code Playgroud)
我正在尝试设置api secret/keyfor,crashlytics但我需要能够设置这些取决于我正在构建的产品风格.
properties.put("apiSecret", WHAT_GOES_HERE)
properties.put("apiKey", WHAT_GOES_HERE)
Run Code Online (Sandbox Code Playgroud)
如何设置/获取这些变量?
我已将以下内容添加到我的 build.gradle
productFlavors {
local {
buildConfigField "String", "CRASHLYTICS_API_SECRET", "1234"
buildConfigField "String", "CRASHLYTICS_API_KEY", …Run Code Online (Sandbox Code Playgroud)