2015-01-26 50 views
5

我正在尝试编写一个脚本文件,该脚本文件构建我的apk并将其上传至Crashlytics测试版,但未取得成功。cordova和crashlytics beta build脚本

echo "\n > cordova build android\n" 
cordova build android --release 

echo "\n > signing apk\n" 
jarsigner \ 
    -storepass $STOREPASS \ 
    -sigalg SHA1withRSA \ 
    -digestalg SHA1 \ 
    -keystore $KEYSTORE \ 
    $APK_PATH \ 
    $NAME 

mkdir -p releases 
zipalign -f -v 4 \ 
    $APK_PATH \ 
    $TARGET_PATH 

脚本完美的作品,但是当我运行

java -jar scripts/crashlytics-devtools.jar \ 
    -projectPath $PROJECT_PATH \ 
    -androidManifest $PROJECT_PATH/AndroidManifest.xml \ 
    -androidRes $PROJECT_PATH/res \ 
    -androidAssets $PROJECT_PATH/assets \ 
    -apiKey $FABRIC_API_KEY \ 
    -apiSecret $FABRIC_BUILD_SECRET \ 
    -uploadDist $APK \ 
    -verbose 

它给了我一个Exception in thread "main" com.crashlytics.tools.android.DeveloperTools$PluginException: Crashlytics halted compilation because it can't extract Crashlytics build info from the APK

任何帮助吗?

+0

你得到任何的解决方案?到目前为止,我面临同样的问题,也没有运气。 – Balkrishna 2015-04-06 14:26:07

+0

不,还是没有运气 – kilianc 2015-04-07 17:10:32

回答

1

我得到这个工作由...

  1. 安装结构为platforms/android/build.gradle
  2. 安装面料插件

    https://github.com/engincancan/cordova-fabric-io-plugin

要安装光纤到build.gradle我做了以下...

  1. 安装Android Studio。
  2. 安装适用于Android Studio的Fabric插件。
  3. 在Android Studio中打开platforms/android中的项目。
  4. 单击工具栏中的Fabric按钮,登录并浏览安装向导。

该向导告诉你它是如何添加到项目中的,所以如果你真的有动力,你可以编写自己的脚本来做同样的事情。这意味着你可以从命令行编译而不需要检查platforms/android

之后,您提供的脚本工作正常。

0

听起来像在您的构建过程中,您应该安装cordova插件。

尝试做这些中的一个(离子采用科尔多瓦这里备案的缘故):然后

# via command line install 
cordova plugin add cordova-fabric-plugin --variable FABRIC_API_KEY=${FABRIC_API_KEY} --variable FABRIC_API_SECRET=${FABRIC_BUILD_SECRET} 

# install from source 
cordova plugin add https://github.com/sarriaroman/FabricPlugin#x.x.x --variable FABRIC_API_KEY=${FABRIC_API_KEY} --variable FABRIC_API_SECRET=${FABRIC_BUILD_SECRET} 

# using ionic 
ionic plugin add cordova-fabric-plugin --variable FABRIC_API_KEY=${FABRIC_API_KEY} --variable FABRIC_API_SECRET=${FABRIC_BUILD_SECRET} 

你的脚本将是这个样子:

# now execute the commands in your script 
cordova plugin add cordova-fabric-plugin --variable FABRIC_API_KEY=${FABRIC_API_KEY} --variable FABRIC_API_SECRET=${FABRIC_BUILD_SECRET} 

java -jar scripts/crashlytics-devtools.jar \ 
    -projectPath $PROJECT_PATH \ 
    -androidManifest $PROJECT_PATH/AndroidManifest.xml \ 
    -androidRes $PROJECT_PATH/res \ 
    -androidAssets $PROJECT_PATH/assets \ 
    -apiKey $FABRIC_API_KEY \ 
    -apiSecret $FABRIC_BUILD_SECRET \ 
    -uploadDist $APK \ 
    -verbose 
相关问题