2015-01-26 49 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 
相關問題