Eclipse Android প্লাগইনগুলিতে "ডিবাগ শংসাপত্রের মেয়াদ শেষ হয়ে গেছে" ত্রুটি


1897

আমি একটি প্রকল্প তৈরি করতে Eclipse Android প্লাগইন ব্যবহার করছি, তবে কনসোল উইন্ডোতে আমি এই ত্রুটিটি পাচ্ছি:

[2010-02-03 10:31:14 - androidVNC]Error generating final archive:
Debug certificate expired on 1/30/10 2:35 PM!

আমি কীভাবে এটি ঠিক করব?


8
কেউ বলতে পারে কেন এমন হয়?
ম্যাটিকাল

2
আপনার সিস্টেমের তারিখটি কি পরিবর্তিত হয়েছে, এর 25 বছরের বৈধ শংসাপত্র তৈরি করুন (অ্যাপ্লিকেশন সাইন করার সময় প্রস্তাবিত হিসাবে)। এর ইভেন্টটি 5 বছরের বেশি পুরানো নয় বিশেষত
ত্রিকালদর্শী

আপনাকে নতুন কীস্টোর তৈরি করতে হবে
bynu022

উত্তর:


2241

অধীনে আপনার ডিবাগ শংসাপত্র মুছবেন ~/.android/debug.keystoreউপর Linux এবং Mac OS X এর ; ডিরেক্টরি মত কিছু %USERPROFILE%/.androidউপর উইন্ডোজ

আপনি পরবর্তী যখন একটি ডিবাগ প্যাকেজ তৈরির চেষ্টা করবেন তখন Eclipse প্লাগইনটি একটি নতুন শংসাপত্র তৈরি করে। শংসাপত্রটি তৈরি করতে আপনাকে পরিষ্কার করতে হবে এবং তারপরে বিল্ড করতে হবে।


13
উইন্ডোজে আমাকে ডিবাগ.কিস্টোর মুছে ফেলতে হয়েছিল এবং একটি নতুন সংকলন পেতে কিছু পরিবর্তন করতে হয়েছিল। আমি একটি নতুন পরীক্ষার প্রকল্প তৈরি করেছি এবং নতুন ডিবাগ.কিস্টোর তৈরি হয়েছিল।
টমাস

117
আপনি যদি প্রকল্পটি 'পরিষ্কার' করেন (তবে প্রকল্পটিতে যান -> ক্লিন ...)
অ্যাডামনফিশ

11
এটি ঠিক করার জন্য এখন একটি বাগ ট্র্যাকার সমস্যা রয়েছে। দয়া করে এটির জন্য ভোট দিন। কোড.google.com/p/android/issues/detail?id=15370
ম্যানফ্রেড মোসার

61
ক্লিন আমার জন্য সমস্যাটি সমাধান করে নি, আমার হাতে হাতে rm ~ / .android / debug.keystore দরকার।
জেমস মুর

3
@ জেমস হাতে হাতে কীস্টোরটি মুছে ফেলা হচ্ছে উপরের উত্তরের প্রথম অংশ। প্রকল্পটি পরিষ্কার করা (বা পুনর্নির্মাণ) আপনাকে নতুন কীস্টোর তৈরি করতে যা করতে হবে তা হল।
ক্রিস্টোফার অর

334

ইনস্টলেশন সমাপ্তির পরে, অ্যান্ড্রয়েড এসডিকে debugআপনার কাছে একটি কী স্টোরে ডাকা একটি স্বাক্ষর শংসাপত্র তৈরি করে debug.keystore। Elpipse প্লাগ-ইন উত্পন্ন প্রতিটি অ্যাপ্লিকেশন বিল্ড সাইন করতে এই শংসাপত্রটি ব্যবহার করে।

দুর্ভাগ্যক্রমে একটি ডিবাগ শংসাপত্র শুধুমাত্র 365 দিনের জন্য বৈধ। নতুন তৈরি করতে আপনাকে অবশ্যই বিদ্যমান debug.keystoreফাইলটি মুছতে হবে। এর অবস্থান প্ল্যাটফর্ম নির্ভর - আপনি এটি পছন্দসমূহ - অ্যান্ড্রয়েড - বিল্ড - ডিফল্ট ডিবাগ কীস্টোরগুলিতে খুঁজে পেতে পারেন


23
ডিফল্ট 30 বছর বয়সের একটি পরিবর্তন 6 এপ্রিল 2011-এ গৃহীত হয়েছিল: পর্যালোচনা.সোর্স.অ্যান্ড্রয়েড. com
জেমস মুর

আপনি যদি আপনার ডিবাগ.কিস্টোর মুছে ফেলেন তবে আপনি কীভাবে আপনার অ্যাপ্লিকেশনটি আপডেট করবেন?
ব্যবহারকারী739375

6
@ ব্যবহারকারী 739375, ডিবাগ.কিস্টোর কেবল ডিবাগিংয়ের জন্য ব্যবহৃত হয়, "উত্পাদন" এর জন্য একটি পৃথক শংসাপত্র ব্যবহৃত হয়।
টিও ক্লেস্ট্রাপ রাইজেজন

@ জামেসমুর আমি সত্যিই অবাক হয়েছি যে শংসাপত্রটি কতটা পুরানো ছিল
ত্রিকালদর্শী

254

আপনার সমস্ত বিকাশ .apk ফাইলগুলি মুছে ফেলতে কষ্ট হচ্ছে কারণ নতুন শংসাপত্রের সাথে মেলে না তাই আপনি এগুলিকে আপনার সমস্ত এভিডিতে আপগ্রেড করতে পারবেন না। আপনাকে আরও একটি বিকাশ এমএপি-এপিআই কী পেতে হবে। আরও একটি সমাধান আছে।

আপনি debug.keystoreযা চান তার মেয়াদ শেষ করে নিজের ডিবাগ শংসাপত্র তৈরি করতে পারেন। .androidআপনার HOMEডিরেক্টরিতে ফোল্ডারে এটি করুন :

keytool -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 14000

keytool.exeজেডিকে বিন ফোল্ডারে পাওয়া যাবে (যেমন C:\Program Files\Java\jdk1.6.0_31\bin\উইন্ডোজে)।

এডিটি "অ্যান্ড্রয়েড ডিবাগ" হিসাবে শংসাপত্রের প্রথম এবং শেষ নামটি সেট করে, "অ্যান্ড্রয়েড" হিসাবে সাংগঠনিক ইউনিট এবং দ্বি-বর্ণের দেশ কোডটি "মার্কিন" হিসাবে। আপনি সংস্থা, শহর এবং রাষ্ট্রীয় মানগুলি "অজানা" হিসাবে ছেড়ে যেতে পারেন। এই উদাহরণটি 14000 দিনের মেয়াদ ব্যবহার করে। আপনার পছন্দমতো মানটি ব্যবহার করতে পারেন।


3
আমি এটি পছন্দ করি কারণ এসডিকে মেয়াদোত্তীর্ণ শংসাপত্রটি হ্যান্ডেল করার জন্য আরও ভাল উপায় সরবরাহ না করা পর্যন্ত এটি আরও দীর্ঘমেয়াদী ফিক্স সরবরাহ করে।
শান আইটকে

23
আমি এটি পছন্দ করি কারণ আমাকে গ্রহনটি মোটেও ব্যবহার করার দরকার নেই।
ম্যাটকে

আমি ধরে নিচ্ছি যে এটি কমান্ড লাইনের নীচে টাইপ করা উচিত। যদি তা হয় তবে আমি একটি "কীটোলটি স্বীকৃত নয়" ত্রুটি পেয়েছি। আপনি এই পদ্ধতি আরও ব্যাখ্যা করতে পারেন?
টেড বেতজ

1
কীটোলটি আপনার জেডিকে এর বিন ডিরেক্টরিতে (যে কোনও ওএস) পাওয়া যাবে। আমি সাধারণত আমার প্যাথে এই বিন ডিরেক্টরিটি যুক্ত করি যাতে উপরের যে কোনও জায়গা থেকে কাজ করতে পারে। আপনি আপনার জেডিকে বিন ডিরেক্টরিটি খুঁজে পেতে পারেন এবং এটি আপনার প্যাথএইচএতে যুক্ত করতে পারেন, অথবা আপনি কমান্ড লাইনে কীটোলের পুরো পথের নামটি রাখতে পারেন।
ডেভ ম্যাকলিয়ান

1
অন্যান্য মন্তব্যকারীরা যেমন উল্লেখ করেছে, গুগল মনে হচ্ছে যে ডিবাগ শংসাপত্রের ডিফল্ট সময়কাল বাড়িয়েছে তাই ডিবাগ.কিস্টোর ফাইলটি মুছে ফেলা এবং পরিষ্কার / বিল্ড করা আরও সহজ।
ডেভ ম্যাকলিয়ান

81

ভিস্তার উপর, এটি কাজ করেছে:

  1. ডস: del c:\user\dad\.android\debug.keystore

  2. ECLIPSE: প্রকল্পে, প্রকল্পটি পরিষ্কার করুন। বন্ধ পুনরায় খুলুন

  3. ECLIPSE: এমুলেটর শুরু করুন। এমুলেটর থেকে অ্যাপ্লিকেশন সরান।

তুমি যেতে পারো।

আমি যখন ত্রুটিটি বলি তখন আমি বেশ চিন্তিত হয়ে পড়েছিলাম, তবে আমি এটি এখানে পড়া এবং 10 মিনিটের জন্য প্রায় খেলা থেকে ঠিক করেছিলাম।


68
  • উইন্ডোজ

মুছুন: ডিবাগ.কিস্টোর অবস্থিত C:\Documents and Settings\\[user]\.android, আপনার প্রকল্পটি পরিষ্কার করুন এবং তৈরি করুন।

  • উইন্ডোজ 7 গিয়ে C:\Users\[username]\.androidডিবাগ.কিস্টোর ফাইলটি মুছুন।

আপনার প্রকল্পটি পরিষ্কার করুন এবং তৈরি করুন।

  • ম্যাক

আপনার কীস্টোরটি অবস্থিত মুছে ফেলুন ~/.android/debug.keystoreসাফ করুন এবং আপনার প্রকল্পটি তৈরি করুন।

সমস্ত ডিভাইসে আপনি নতুন ডিবাগ.কিস্টোর পেতে না পারলে সবেমাত্র গ্রহনটি পুনঃসূচনা করুন।


56

উইন্ডোজ 7 এ এটি পথে রয়েছে

C:\Users\[username]\.android
  • এই পথটি সরিয়ে ফেলুন debug.keystore
  • আপনার প্রকল্পটি পরিষ্কার করুন এবং তৈরি করুন।

41

প্রকল্পের ডিবাগিংয়ের মাঝামাঝি সময়ে যদি কোনও শংসাপত্রের মেয়াদ শেষ হয়, আপনাকে অবশ্যই একটি ম্যানুয়াল আনইনস্টল করতে হবে :

চালানো দয়া করে adb uninstall <package_name>একটি শেল হবে।


38

একটি ম্যাকের উপর, টার্মিনালটি খুলুন (বর্তমান ব্যবহারকারীর ডিরেক্টরিটি খুলতে হবে), সিডি ".অ্যান্ড্রয়েড" (ডিগ্রীগের যাচাই করতে "এলএস" রয়েছে keyকিস্টোর রয়েছে)। ফাইলটি সরাতে অবশেষে "আরএম ডিবাগ.কিস্টোর"।


36

অ্যান্ড্রয়েড এসডিকে আপনার জন্য একটি "ডিবাগ" স্বাক্ষরকারী শংসাপত্র বলে একটি কীস্টোর বলা হয় debug.keystoreE গ্রহগ্রাহ প্লাগ-ইন উত্পন্ন প্রতিটি অ্যাপ্লিকেশন বিল্ড সাইন ইন করতে এই শংসাপত্রটি ব্যবহার করে।

দুর্ভাগ্যক্রমে একটি ডিবাগ শংসাপত্র শুধুমাত্র 365 দিনের জন্য বৈধ। একটি নতুন তৈরি করতে, আপনাকে অবশ্যই বিদ্যমান debug.keystoreফাইলটি মুছতে হবে। এর অবস্থান প্ল্যাটফর্ম নির্ভর - আপনি এটি পছন্দসমূহ -> অ্যান্ড্রয়েড -> বিল্ড -> * ডিফল্ট ডিবাগ কীস্টোরগুলিতে খুঁজে পেতে পারেন।

আপনি যদি উইন্ডোজ ব্যবহার করছেন তবে নীচের পদক্ষেপগুলি অনুসরণ করুন।

ডস: ডেল সি: \ ব্যবহারকারী \ বাবা and অ্যান্ড্রয়েড \ ডিবাগ.কিস্টোর

গ্রহন: প্রকল্পে, প্রকল্পটি পরিষ্কার করুন। বন্ধ পুনরায় খুলুন

গ্রহন: এমুলেটরটি শুরু করুন। এমুলেটর থেকে অ্যাপ্লিকেশন সরান।

আপনি যদি লিনাক্স বা ম্যাক ব্যবহার করেন তবে নীচের পদক্ষেপগুলি অনুসরণ করুন।

ম্যানুয়ালি ফোল্ডার debug.keystoreথেকে মুছুন .android

আপনি .androidএই জাতীয় ফোল্ডারটি খুঁজে পেতে পারেন :home/username/.android

দ্রষ্টব্য: ডিফল্ট .androidফাইলটি গোপন করা হবে।

সুতরাং স্থানের মেনুতে ক্লিক করুন। হোম ফোল্ডার নির্বাচন করুন। ভিউতে ক্লিকের অধীনে, লুকানো ফাইলগুলি দেখান নীচে ক্লিক করুন এবং তারপরে .androidফোল্ডারটি দৃশ্যমান হবে।

debug.keystoreথেকে মুছুন .android folder

তারপরে আপনার প্রকল্পটি পরিষ্কার করুন। এখন অ্যান্ড্রয়েড একটি নতুন .android folderফাইল তৈরি করবে ।


34

কয়েক সপ্তাহ আগে আমার এই সমস্যা হয়েছিল। আমি প্রথম অ্যান্ড্রয়েড বিকাশকারী সাইটে সমস্যা সমাধানের চেষ্টা করেছি , তবে ভাগ্য ছাড়াই। এর পরে আমি অ্যান্ড্রয়েড এসকেকে পুনরায় ইনস্টল করেছিলাম, যা আমার সমস্যার সমাধান করে।


33

হুম। আকর্ষণীয় কীভাবে এত লোক এর সাথে কিছুটা আলাদা অভিজ্ঞতা অর্জন করেছে। আমি সেই দিনগুলির কথা মনে করি যখন এটি একটি চিহ্ন হিসাবে বিবেচিত হয়েছিল যে সফ্টওয়্যারটি প্রকাশের জন্য প্রস্তুত ছিল না এবং ব্যবহারকারীরা এই সমস্যাগুলি দেখা শুরু করার আগে দলটি এটি ঠিক করবে :(

আমার নিজের অভিজ্ঞতা ছিল একটু অন্যরকম। আমি ইতিমধ্যে প্রকল্প> ক্লিন চেষ্টা করেছিলাম, তবে এখনও একই বিল্ড ব্যর্থতা পেয়েছি। তারপরে আমি প্রথম উত্তর যেমনটি বলেছিলাম ঠিক তেমনই ডিবাগ.কিস্টোর (। Android এর নীচে) মুছে ফেলেছি। তবুও একই সমস্যা পেয়েছি। তারপরে আমি আবার একটি পরিষ্কার করলাম, এবং আশ্চর্যের অবাক হলাম, এটি কাজ করেছিল!

এখন আমাকে ভুল করবেন না, আমি খুশি যে এই থ্রেডের ইঙ্গিতগুলির জন্য আমি এটি কাজ করেছিলাম। তবে পরিষ্কারভাবে পরিষ্কার পরিষ্কার কাজ করছে না, এবং কীস্টোরটি মোছার পরে এটি কীভাবে একটি মেয়াদোত্তীর্ণ কী খুঁজে পেল ??? স্পষ্টতই একটিগ্রাহ বা এডিটি-তে কিছু ভুল আছে - যা নিশ্চিত তা নিশ্চিত নয়।


গ্রহপ ফাইলগুলি ক্যাশে করে, তাই ডিস্কে ফাইলটি পরিবর্তিত হয়েছে তা জানতে মাঝে মাঝে একটি পরিষ্কার / রিফ্রেশ প্রয়োজন।
নাভজটক

33

উবুন্টুতে, এটি কাজ করেছে:

আমি গিয়েছিলাম home/username/.androidএবং আমি নতুন নামকরণ keystore.debugকরা keystoreold.debug। এরপরে আমি Eclipse বন্ধ করেছি, Eclipse শুরু করেছি এবং SDK keystore.debugসেই ফোল্ডারে নতুন শংসাপত্র তৈরি করেছে ।

তারপরে আপনাকে ইউএসবি ডিবাগিং বা একটি স্বাক্ষরবিহীন এপিএকে ("স্বাক্ষরযুক্ত" APK = ডিবাগ শংসাপত্র সহ স্বাক্ষরিত) মাধ্যমে ইনস্টল করা অ্যাপ্লিকেশনগুলি আনইনস্টল / পুনরায় ইনস্টল করতে হবে।


14

উইন্ডোজ এক্সপি-তে যান C:\Documents and Settings\%userprofile%\.androidএবং ডিবাগ.কিস্টোর ফাইলটি মুছুন, গ্রহনটি পুনরায় আরম্ভ করুন এবং এখন আপনার প্রকল্পটি ত্রুটি ছাড়াই বিল্ড পান।

উদাহরণ উদাহরণ:

C:\Documents and Settings\raja.ap\.android\

আরও পড়ার জন্য এখানে


13

উইন্ডোতে debug.keystoreফাইল C:\Users\%Username%\.androidফোল্ডারে স্থানীয় হয় । এই ফাইলটি তৈরি করা হয় যখন আপনি আপনার অ্যান্ড্রয়েড এসডিকে ইনস্টল করেন এবং কেবল এক বছরের জন্য বৈধ। এই পেরোডের পরে আপনি এই ত্রুটি পেতে শুরু করবেন Error getting final archive: Debug certificate expired on xx/xx/xxxx

এই ত্রুটিটি সরাতে কেবল ফাইলটি মুছুন এবং আবার প্রোগ্রামটি চালান। আমার গ্রহণে আমি সক্ষম করেছি Project->Build Automaticallyতাই এটি সরাসরি কাজ করেছে তবে আপনি যদি এটি অক্ষম করে থাকেন তবে আপনাকে প্রকল্পটি পরিষ্কার করতে হবে Project->Clean.. আপনার প্রকল্পটি নির্বাচন করুন এবং ঠিক আছে চাপুন। তারপরে আপনাকে এটি ম্যানুয়ালি তৈরি করতে হবে। আপনার প্রকল্পের উপর তৃতীয় ক্লিক করুন এবং নির্বাচন করুন Build project। (দ্রষ্টব্য - আপনি যদি আপনার প্রকল্প মেনুতে বিল্ড স্বয়ংক্রিয়ভাবে বৈশিষ্ট্যটি অক্ষম করে থাকেন তবে আপনি কেবল এই বিকল্পটি দেখতে পাবেন)


13

প্রথমে গ্রহনটি তখন বন্ধ করুন

উইন্ডো কী + আর দ্বারা বা প্রশাসক হিসাবে রানের মাধ্যমে সিএমডি খুলুন

নিম্নলিখিত পদক্ষেপ অনুসরণ করে

del "%USERPROFILE%\.android\debug.keystore"
keytool -genkey -v -keystore "%USERPROFILE%\.android\debug.keystore" -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 30000

এই পুনরায় সূচনা গ্রহনের পরে।


7

আপনি ইনস্টল করার পরে Android SDK in Eclipse, এটি একটি আপনার জন্য একটি ডিবাগ স্বাক্ষরের শংসাপত্র উত্পন্ন কীস্টোর নামক debug.keystore । Elpipse প্লাগ-ইন উত্পন্ন প্রতিটি অ্যাপ্লিকেশন বিল্ড সাইন করতে এই শংসাপত্রটি ব্যবহার করে।

এখন, এই ডিবাগ শংসাপত্রের সমস্যাটি হ'ল এটি কেবল এক বছর বা 365 দিনের জন্য বৈধ। If your Eclipse IDE uses an expired debug certificate, you will not be able to create and/or deploy an Android app

এই সমস্যাটি সমাধান করার জন্য আপনাকে ডিবাগ.কিস্টোর ফাইলটি মুছতে হবে।

  1. Go to Preferences
  2. Android
  3. Build
  4. Default debug keystore

ফাইলটি যেখানে রয়েছে সেখানে আপনার ফোল্ডারটি দেখা উচিত। কেবলমাত্র সেই ফাইলটি মুছুন এবং আপনি যেতে ভাল।

আরও তথ্যের জন্য. আপনি পরিদর্শন করতে পারেন

http://developer.android.com/tools/publishing/app-signing.html


0

এই সমস্যাটি সমাধান করতে, কেবলমাত্র ডিবাগ.কিস্টোর ফাইলটি মুছুন।

এভিডি-র জন্য ডিফল্ট স্টোরেজ অবস্থান

ওএস এক্স এবং লিনাক্সে and / .android / এ।

সি তে: উইন্ডোজ এক্সপিতে and ডকুমেন্টস এবং সেটিংস and। অ্যান্ড্রয়েড।

সি তে: উইন্ডোজ ভিস্তা এবং উইন্ডোজ 7 এ \ ব্যবহারকারীরা and। Android \।

এছাড়াও এই লিঙ্কটি দেখুন, যা সহায়ক হতে পারে।

http://developer.android.com/tools/publishing/app-signing.html

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.