2014-10-02 55 views
1

我有一箇舊應用程序,我最初使用Eclipse在Java中編寫。我已經使用Xcode在Objective-C中重新創建了應用程序。 iOS應用程序更加穩定,所以我正嘗試使用Apportable將其轉移到Android。如果我創建了一個新的密鑰庫,我已經成功創建了發佈APK,但是如果我嘗試使用舊的密鑰庫,則會在下面顯示錯誤消息。我已驗證我正在使用正確的密碼。誰能告訴我問題是什麼?Apportable,舊密鑰庫不工作

BUILD=release ANDROID_KEYSTORE=/Users/user.name/Dropbox/Apportable/Game\ Game/Game.keystore ANDROID_KEYSTORE_PASS=password apportable build 
.... 
     [339/339] Building Build/android-armeabi-release/FarmingGame/FarmingGame-release.apk 
     FAILED: java -jar /Users/user.name/.apportable/SDK/toolchain/macosx/zipbuilder/zipbuilder.jar --zipalign 4 --keystore '/Users/user.name/Dropbox/Apportable/Farming Game/ConstructionKey.keystore' --storepass "$ANDROID_STOREPASS" --keyalias mykey --keypass "$ANDROID_KEYPASS" --cafe-marker -- /Users/user.name/.apportable/SDK/Build/android-armeabi-release/FarmingGame/FarmingGame-release.apk /Users/user.name/.apportable/SDK/Build/android-armeabi-release/FarmingGame/FarmingGame-release.apk.input_list 
     Exception in thread "main" java.lang.NullPointerException 
      at com.apportable.zipbuilder.JarSigner.generateSignatureBlock(JarSigner.java:138) 
      at com.apportable.zipbuilder.JarSigner.signOutputJar(JarSigner.java:55) 
      at com.apportable.zipbuilder.Main.main(Main.java:153) 
     ninja: build stopped: subcommand failed. 
     Error: command failed: /Users/user.name/.apportable/SDK/toolchain/macosx/ninja/ninja --no-strip-ansi-escapes -j 16 /Users/user.name/.apportable/SDK/Build/android-armeabi-release/FarmingGame/FarmingGame-release.apk 

回答

1

看起來好像你在那個build命令中指定了ANDROID_KEY_NAME=...環境變量。

ANDROID_KEY_NAME應該設置爲您要使用的密鑰的別名。要了解哪些鍵(和它們的別名值)都可以運行在終端應用中的以下命令:

keytool -list -v -keystore /path/to/your/keystore.keystore

+0

我跑建議的命令(密鑰工具-list -v -keystore /Users/user.name/Dropbox/Apportable/Game \ Game/Game.keystore),它確實顯示密鑰庫信息。 – 2014-10-03 19:30:40

+0

實際上,這就是它表明:倉庫類型:JKS 密鑰庫提供:SUN 您的keystore包含1項 別名:MYNAME 創建日期:2012年10月25日 條目類型:PrivateKeyEntry 證書鏈長:1 證書[1]: 擁有者:CN = Ryan Tensmeyer 發行機構:CN = Ryan Tensmeyer 序列號:xxxxxxxx Valid until:Thu Oct 25 23:51:57 MDT 2012直到:Aug 8 26 23:51:57 MDT 2262 證書指紋: \t MD5:XX:XX:XX:XX:XX:XX \t SHA1:XX:XX:XX:XX:XX:XX:XX:XX:XX \t簽名算法名:XXXXXXXXXXX \t版本:3個 – 2014-10-03 19:33:53

+0

擴展: #1:的ObjectId:XXXX.XX臨界=假 SubjectKeyIdentifier [ KeyIdentifier [ 0000:XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX ...(n ...',gt..r。 0010:XX XX XX XX ... H ] ] – 2014-10-03 19:34:25