0

我们已经为我们的 android 项目配置了 Crashlytics。我们已经为开发机器设置了 eclipse 插件,并且我们正在尝试为我们的构建机器使用 ant 模块。我们已按照网站上的说明进行操作,但不幸的是,当我们在设备上运行已签名的 APK 版本构建时,应用程序崩溃并且 logcat 显示

06-13 15:57:16.131: E/Crashlytics(21660): .
06-13 15:57:16.131: E/Crashlytics(21660): .     |  | 
06-13 15:57:16.131: E/Crashlytics(21660): .     |  |
06-13 15:57:16.131: E/Crashlytics(21660): .     |  |
06-13 15:57:16.131: E/Crashlytics(21660): .   \ |  | /
06-13 15:57:16.131: E/Crashlytics(21660): .    \    /
06-13 15:57:16.131: E/Crashlytics(21660): .     \  /
06-13 15:57:16.131: E/Crashlytics(21660): .      \/
06-13 15:57:16.131: E/Crashlytics(21660): .
06-13 15:57:16.131: E/Crashlytics(21660): This app relies on Crashlytics. Configure your build environment here: 
06-13 15:57:16.131: E/Crashlytics(21660): https://crashlytics.com/register/[key value]/android/pkgname  //Vrashabh// Key value has been hidden to send to crashlytics
06-13 15:57:16.131: E/Crashlytics(21660): .
06-13 15:57:16.131: E/Crashlytics(21660): .      /\
06-13 15:57:16.131: E/Crashlytics(21660): .     /  \
06-13 15:57:16.131: E/Crashlytics(21660): .    /    \
06-13 15:57:16.131: E/Crashlytics(21660): .   / |  | \
06-13 15:57:16.131: E/Crashlytics(21660): .     |  |
06-13 15:57:16.131: E/Crashlytics(21660): .     |  |
06-13 15:57:16.131: E/Crashlytics(21660): .     |  |
06-13 15:57:16.131: E/Crashlytics(21660): .
06-13 15:57:16.141: E/AndroidRuntime(21660): FATAL EXCEPTION: main
06-13 15:57:16.141: E/AndroidRuntime(21660): Process: com.pengala.client, PID: 21660
06-13 15:57:16.141: E/AndroidRuntime(21660): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.pengala.client/com.pengala.client.SplashActivity}: com.crashlytics.android.CrashlyticsMissingDependencyException: 
06-13 15:57:16.141: E/AndroidRuntime(21660): This app relies on Crashlytics. Configure your build environment here: 
06-13 15:57:16.141: E/AndroidRuntime(21660): https://crashlytics.com/register/[key value]/android/pkgname  //Vrashabh// Key value has been hidden to send to crashlytics
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.ActivityThread.access$800(ActivityThread.java:135)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.os.Handler.dispatchMessage(Handler.java:102)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.os.Looper.loop(Looper.java:136)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.ActivityThread.main(ActivityThread.java:5017)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at java.lang.reflect.Method.invokeNative(Native Method)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at java.lang.reflect.Method.invoke(Method.java:515)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at dalvik.system.NativeStart.main(Native Method)
06-13 15:57:16.141: E/AndroidRuntime(21660): Caused by: com.crashlytics.android.CrashlyticsMissingDependencyException: 
06-13 15:57:16.141: E/AndroidRuntime(21660): This app relies on Crashlytics. Configure your build environment here: 
06-13 15:57:16.141: E/AndroidRuntime(21660): https://crashlytics.com/register/[key value]/android/pkgname  //Vrashabh// Key value has been hidden to send to crashlytics
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.d.a(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.d.d(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.internal.cg.b(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.internal.ck.d(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.internal.cg.b(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.internal.ck.a(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.crashlytics.android.d.a(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at com.pengala.client.SplashActivity.onCreate(Unknown Source)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.Activity.performCreate(Activity.java:5231)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
06-13 15:57:16.141: E/AndroidRuntime(21660):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
06-13 15:57:16.141: E/AndroidRuntime(21660):    ... 11 more

我们还缺少哪些额外的步骤?

完成的步骤:

1.) Eclipse plugin added, manifest has crashlytics API key
2.) Crashlytics ant folder copied to build machine and imported by custom_rules.xml

我们已按照此处提到的说明进行操作:http: //support.crashlytics.com/knowledgebase/articles/203395-ant

但无济于事

请注意,使用 eclipse 构建的应用程序可以正常工作,不会出现任何错误。

4

1 回答 1

4

来自 Crashlytics 的迈克在这里。将 crashlytics_build.xml 的导入文件添加到您的 build.xml 中,类似于以下行:

<import file="${sdk.dir}/tools/ant/build.xml" /

这将确保在构建之前导入 Crashlytics 任务。

于 2014-08-25T15:48:41.950 回答