मैं jarsigner.exe उपयोग करने की कोशिश कर रहा है और adb.exe साथ स्थापित करने के लिए कोशिश कर रहा है। मैंने एक सरल हैलो एंड्रॉइड प्रोजेक्ट बनाया है और यह उपयोगकर्ता की .android निर्देशिका में स्थित debug.keystore का उपयोग करके एक हस्ताक्षरित HelloAndroid.apk उत्पन्न करेगा। ग्रहण से लॉन्च करते समय, यह बिना किसी समस्या के एमुलेटर पर एपीके बनाता है और इंस्टॉल करता है।मैन्युअल jarsigner.exe साथ एंड्रॉयड पैकेज पर हस्ताक्षर और मैन्युअल रूप से एक Android पैकेज पर हस्ताक्षर और एक एपीआई वी 8 एमुलेटर पर इसे स्थापित करने adb.exe
मैं एंड्रॉयड उपकरणों का इस्तेमाल एक अलग निर्देशिका करने के लिए एक अहस्ताक्षरित आवेदन पैकेज निर्यात करने के लिए। मैं पर हस्ताक्षर किए और पैकेज zipaligned और इसे स्थापित करने एडीबी थे, लेकिन त्रुटि प्राप्त:
Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]
मैं इस पर हस्ताक्षर करने के लिए निम्न आदेश का उपयोग किया।
jarsigner -verbose -keystore c:\users\jhwong\.android\debug.keystore
-storepass android -keypass android -digestalg SHA-1 -sigalg SHA1withRSA
-sigfile CERT -signedjar temp\HelloWorld2.apk
temp\HelloWorld.unsigned.apk androiddebugkey
adding: META-INF/MANIFEST.MF
adding: META-INF/CERT.SF
adding: META-INF/CERT.RSA
signing: res/layout/main.xml
signing: AndroidManifest.xml
signing: resources.arsc
signing: res/drawable-hdpi/icon.png
signing: res/drawable-ldpi/icon.png
signing: res/drawable-mdpi/icon.png
signing: classes.dex
जो मुझे किसी भी त्रुटि नहीं दिया और सिर्फ यकीन है कि मैं भाग गया बनाता है:
jarsigner -verify -verbose temp\HelloWorld2.apk
यह पता चला जार सत्यापित किया गया था और प्रत्येक फ़ाइल पर हस्ताक्षर किए और प्रकट का हिस्सा है।
मैं zipalign -v 4 temp\HelloWorld2.apk temp\HelloWorld3.apk
जो त्रुटि के बिना समाप्त हो गया भाग गया। फिर adb install -r temp\HelloWorld3.apk
का उपयोग किया गया।
मैं कई संबंधित धागे और लेख इन निर्देशों का सुझाव दे देखा है, लेकिन मैं क्यों यह ग्रहण का उपयोग करके हस्ताक्षरित पैकेज का निर्माण करने के छंद मैन्युअल रूप से काम नहीं करता है के रूप में उलझन में हूँ। मैंने एक्लिप्स से बनाया गया पैकेज भी लिया है और इसे स्थापित करने के लिए adb.exe का उपयोग करने में सक्षम था इसलिए मैंने इसे पैकेज पर हस्ताक्षर करने के लिए संकुचित कर दिया है। मैंने कीस्टोरों की कोशिश की है कि मैंने कीटोल से उत्पन्न किया है लेकिन उन्होंने काम नहीं किया है, इसलिए मैंने debug.keystore की कोशिश की है।
मैं अगर वे कुछ भी मेरी jarsigner कोड के साथ गलत देखा किसी भी सलाह की सराहना करेंगे।
आपने मेरा दिन बचाया! मुझे यह जानकारी कहीं भी नहीं मिल सका! – POMATu
इसने मुझे चोट की दुनिया बचाई। – Tom
हाँ! अंत में यह पाया। बहुत धन्यवाद! – bk138