2015-01-26 8 views
5

Próbuję napisać plik skryptu, który buduje mój apk i przesyła go do Crashlytics beta bez powodzenia.cordova i crashlytics beta build skrypt

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 

skrypt działa perfekcyjnie, ale gdy uruchamiam

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 

daje mi Exception in thread "main" com.crashlytics.tools.android.DeveloperTools$PluginException: Crashlytics halted compilation because it can't extract Crashlytics build info from the APK

pomocy?

+0

dostałeś żadnych rozwiązań? Mam do czynienia z tym samym problemem i bez powodzenia. – Balkrishna

+0

Nie, wciąż nie ma szczęścia – kilianc

Odpowiedz

1

mam to działa przez ...

  1. Instalacja tkaniny do platforms/android/build.gradle
  2. Instalacja wtyczki Fabric

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

Aby zainstalować tkanin do build.gradle Zrobiłem następujący ...

  1. Zainstaluj Android Studio.
  2. Zainstaluj wtyczkę Fabric dla Androida Studio.
  3. Otwórz projekt w wersji platforms/android w Android Studio.
  4. Kliknij przycisk Tkanina na pasku narzędzi, zaloguj się i przejdź przez kreator instalacji.

Kreator powie ci, co dodaje do projektu, więc jeśli jesteś naprawdę zmotywowany, możesz napisać własny skrypt, aby zrobić to samo. Oznaczałoby to, że możesz budować z wiersza poleceń bez sprawdzania w platforms/android.

Następnie dostarczony skrypt działa poprawnie.

0

Wygląda na to, że podczas procesu kompilacji powinieneś zainstalować wtyczkę cordova.

spróbować zrobić jeden z nich (jonowy wykorzystuje Cordova, a tutaj przez wzgląd na archiwalnych):

# 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} 

Twój skrypt będzie wtedy wyglądać tak:

# 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