2012-08-04 35 views
5

रूप में एक ही प्रमाण पत्र मैं Google को अपना Android एप्लिकेशन अपलोड करने के लिए बाजार खेलते हैं कोशिश कर रहा हूँ के साथ हस्ताक्षर किया जाना चाहिए और मैं त्रुटि मिलती है:एंड्रॉयड - apk को पिछले संस्करण

the apk must be signed with the same certificates as the previous version 

अजीब बात मैं कर रहा हूँ है मूल पासवर्ड के साथ मूल कीस्टोन का उपयोग करके, इसलिए मैं उलझन में हूं कि इस समस्या का कारण क्या हो सकता है।

1) मैंने अपने मैक ओएस एक्स को शेर में अपग्रेड किया है जो मुझे लगता है कि 64 बिट ओएस पहले 32 बिट ओएस के बारे में सोचता है। क्या यह समस्या हो सकती है?

2) मैंने इस नए ऐप संस्करण को बनाने से पहले एंड्रॉइड टूल्स: एक्लिप्स, एसडीके और जावा अपडेट किया था। क्या यह समस्या हो सकती है?

3) मैं भी एप्लिकेशन गूगल पर है कि खेलने के लिए और नए एप्लिकेशन और प्रमाणपत्र मान्य बार ही कर रहे हैं के पुराने संस्करण पर

jarsigner -verify -verbose -certs 

चल कोशिश की।

4) मैंने मैन्युअल रूप से और एक्लिप्स में निर्यात एंड्रॉइड एप्लिकेशन का उपयोग करके नया एपीके बनाया है।

5) मैन्युअल रूप से मैं

Android Tools -> Export Unsigned Application and then using 
jarsigner -verbose -keystore mykeystore.keystore app.apk companyName 
/Developer/android-sdk-mac_86/tools/zipalign -v 4 app.apk app_aligned.apk 

का उपयोग कर `तो मुझे नहीं लगता कि समस्या यह है कि मैं गलत कीस्ट्रोक का उपयोग कर रहा है APK बनाया द्वारा ग्रहण के भीतर। मैंने पढ़ा है कि यह समस्या

ए) रिलीज एपीके के बजाय डीबग एपीके अपलोड करने का प्रयास कर सकती है।

बी) मैनिफेस्ट में गलत पैकेज नाम होने के बाद।

सी) संस्करण कोड और संस्करण नाम को बढ़ा नहीं रहा है।

क्या ऐसी अन्य चीजें हैं जो गलत समस्या का उपयोग करने के अलावा इस समस्या का कारण बन सकती हैं?

+0

संभावित डुप्लिकेट [एपीके को पिछले संस्करण के समान प्रमाणपत्रों पर हस्ताक्षर किया जाना चाहिए] (http://stackoverflow.com/questions/4843212/the-apk-must-be-signed-with-the-same- प्रमाणपत्र-जैसा-पिछले संस्करण) –

+0

आप http://developer.android.com/tools/publishing/app-signing.html को पढ़ना चाहेंगे, लेकिन जब आपने अपग्रेड किया था तो क्या आपने पहले अपनी कुंजी बैकअप ली थी? –

+0

मुझे नहीं लगता कि यह एक डुप्लिकेट प्रश्न है क्योंकि मेरे पास मूल कीस्टोन है। –

उत्तर

1

ठीक है मेरे मामले में यह पता चला कि मैं गलत कीस्टोर का उपयोग कर रहा था। क्या मुझे इस साकार करने के लिए नेतृत्व

jarsigner -verify -verbose -certs android_app 
पिछले और नए एप्लिकेशन पर

चल रहा था और प्रत्येक के लिए एक अलग CERT.RSA फ़ाइल नाम हो रही है।

तो मैंने थोड़ा सा खोला और एक और कीस्टोर पाया, जो सही साबित हुआ।

+0

मेरे पास मेरी पुरानी कीस्टोर है, मैं इसे गलत के बजाय इसका उपयोग कैसे कर सकता हूं? मुझे ग्रहण पर विकल्प नहीं दिख रहा है। – dee