এটি প্রভাবিত করতে পারে এমন কিছু কারণ রয়েছে:
একটি অ্যাপ্লিকেশন অবশ্যই স্পষ্টভাবে ঘোষণা করতে হবে যে এটি এসডি কার্ডে ইনস্টল করা ভাল / সম্ভাব্য।
এপিআই লেভেল 8 দিয়ে শুরু করে আপনি আপনার অ্যাপ্লিকেশনটিকে বাহ্যিক স্টোরেজে ইনস্টল করার অনুমতি দিতে পারেন (উদাহরণস্বরূপ, ডিভাইসের এসডি কার্ড)। এটি একটি alচ্ছিক বৈশিষ্ট্য যা আপনি android:installLocation
ম্যানিফেস্টের বৈশিষ্ট্য সহ আপনার অ্যাপ্লিকেশনটির জন্য ঘোষণা করতে পারেন । আপনি যদি এই বৈশিষ্ট্যটি ঘোষণা না করেন তবে আপনার অ্যাপ্লিকেশনটি কেবলমাত্র অভ্যন্তরীণ স্টোরেজে ইনস্টল হবে এবং এটি বাহ্যিক স্টোরেজে স্থানান্তরিত করা যাবে না ।
(জোর আমার)
একটি অ্যাপ্লিকেশন এপিআই 7 (ফ্রয়েও) বা নিম্ন ব্যবহার করে সংকলনের জন্য সেট করা আছে যা এসডি কার্ডে অ্যাপ্লিকেশন ইনস্টল করতে সমর্থন করে না (এমনকি এটি জিঞ্জারব্রেড বা নতুন ডিভাইসে ইনস্টল থাকলেও)
আপনার অ্যাপ্লিকেশনটির বাহ্যিক স্টোরেজে ইনস্টল করার ক্ষমতাটি কেবলমাত্র API লেভেল 8 (অ্যান্ড্রয়েড 2.2) বা আরও বেশি চলমান ডিভাইসে উপলব্ধ একটি বৈশিষ্ট্য। বিদ্যমান স্তরের অ্যাপ্লিকেশনগুলি যা এপিআই লেভেল 8 এর পূর্বে নির্মিত হয়েছিল সর্বদা অভ্যন্তরীণ স্টোরেজে ইনস্টল হবে এবং বাহ্যিক স্টোরেজে স্থানান্তরিত করা যাবে না (এমনকি এপিআই লেভেল 8 সহ ডিভাইসগুলিতেও) । তবে, যদি আপনার অ্যাপ্লিকেশনটি 8 টিরও কম অ্যাপ্লিকেশন স্তরকে সমর্থন করার জন্য ডিজাইন করা হয়েছে, তবে আপনি API লেভেল 8 বা ততোধিক ডিভাইসগুলির জন্য এই বৈশিষ্ট্যটি সমর্থন করা চয়ন করতে পারেন এবং 8 এর চেয়ে কম এপিআই স্তর ব্যবহার করে ডিভাইসের সাথে সামঞ্জস্যপূর্ণ হতে পারেন।
(জোর আমার)
কিছু অ্যাপ্লিকেশনগুলি এসডি কার্ডে ইনস্টল করা ভাল না হওয়ার কারণগুলি নিম্নরূপ:
যখন ব্যবহারকারী তাদের কম্পিউটারের সাথে ফাইলগুলি ভাগ করার জন্য ইউএসবি ভর স্টোরেজ সক্ষম করে (বা অন্যথায় বাহ্যিক স্টোরেজটি আনমাউন্ট বা সরিয়ে দেয়), বাহ্যিক স্টোরেজে ইনস্টল থাকা এবং বর্তমানে চলমান যে কোনও অ্যাপ্লিকেশন মারা যায়। ভর স্টোরেজ অক্ষম না করা এবং বাহ্যিক স্টোরেজটি ডিভাইসে পুনঃস্থাপন না করা পর্যন্ত সিস্টেম কার্যকরভাবে অ্যাপ্লিকেশনটি সম্পর্কে অজ্ঞাত হয়ে যায়। অ্যাপ্লিকেশনটি হত্যা করা এবং এটি ব্যবহারকারীর কাছে অনুপলব্ধ করা ছাড়াও, এটি আরও গুরুতর উপায়ে কিছু ধরণের অ্যাপ্লিকেশনগুলি ভেঙে ফেলতে পারে। আপনার অ্যাপ্লিকেশনটি ধারাবাহিকভাবে প্রত্যাশার সাথে আচরণ করার জন্য, বাহ্যিক স্টোরেজটি আনমাউন্ট করার সময় উদ্ধৃত পরিণতিগুলির কারণে আপনার অ্যাপ্লিকেশনটি নিম্নলিখিত বৈশিষ্ট্যগুলির কোনওটি ব্যবহার করে যদি বাহ্যিক স্টোরেজে আপনার অ্যাপ্লিকেশনটি ইনস্টল করার অনুমতি দেওয়া উচিত নয়:
সেবা
আপনার দৌড় Service
মারা হবে এবং বাহ্যিক স্টোরেজ পুনরায় মাউন্ট করা হলে পুনরায় আরম্ভ করা হবে না। [...]
বিপদাশঙ্কা সেবা
আপনার নিবন্ধিত অ্যালার্ম AlarmManager
বাতিল হয়ে যাবে। [...]
ইনপুট পদ্ধতি ইঞ্জিন
আপনার আইএমই ডিফল্ট আইএমই দ্বারা প্রতিস্থাপিত হবে। [...]
লাইভ ওয়ালপেপার
আপনার চলমান লাইভ ওয়ালপেপারটি ডিফল্ট লাইভ ওয়ালপেপার দ্বারা প্রতিস্থাপিত হবে। [...]
অ্যাপ উইজেট
আপনার অ্যাপ্লিকেশন উইজেটটি হোম স্ক্রীন থেকে সরানো হবে। যখন বাহ্যিক স্টোরেজটি পুনরায় মাউন্ট করা হয়, তখন সিস্টেম অ্যাপটি হোম অ্যাপ্লিকেশনটি পুনরায় সেট না করা (সাধারণত কোনও সিস্টেম পুনরায় বুট না হওয়া পর্যন্ত) না করা পর্যন্ত আপনার অ্যাপ্লিকেশন উইজেটটি ব্যবহারকারী চয়ন করতে পারবেন না।
অ্যাকাউন্ট ম্যানেজার
আপনার তৈরি অ্যাকাউন্টগুলি AccountManager
বাহ্যিক স্টোরেজ পুনঃনির্মাণ না হওয়া অবধি অদৃশ্য হয়ে যাবে।
সিঙ্ক অ্যাডাপ্টার
আপনার AbstractThreadedSyncAdapter
এবং এর সমস্ত সিঙ্ক কার্যকারিতা কাজ করবে না যতক্ষণ না বাহ্যিক স্টোরেজ পুনরায় মাউন্ট না করা হয়।
ডিভাইস প্রশাসক
আপনার DeviceAdminReceiver
এবং এর সমস্ত প্রশাসনিক ক্ষমতা অক্ষম করা হবে, যা ডিভাইসের কার্যকারিতার জন্য অপ্রত্যাশিত পরিণতি হতে পারে, যা বাহ্যিক স্টোরেজ পুনরায় মাউন্ট করার পরেও অব্যাহত থাকতে পারে।
"বুট সম্পূর্ণ হয়েছে" শুনছেন ব্রডকাস্ট রিসিভারস
ACTION_BOOT_COMPLETED
বাহ্যিক স্টোরেজটি ডিভাইসে মাউন্ট করার আগে সিস্টেমটি সম্প্রচারটি সরবরাহ করে । যদি আপনার অ্যাপ্লিকেশনটি বাহ্যিক স্টোরেজে ইনস্টল করা থাকে তবে এটি কখনই এই সম্প্রচারটি গ্রহণ করতে পারে না।
যদি আপনার অ্যাপ্লিকেশন উপরে উল্লিখিত কোনও বৈশিষ্ট্য ব্যবহার করে তবে আপনার অ্যাপ্লিকেশনটিকে বাহ্যিক স্টোরেজে ইনস্টল করার অনুমতি দেওয়া উচিত নয় ।
(কিছু অংশ redacted হয়েছে। তারা ব্যাখ্যা করছে যে এসডি কার্ডটি পুনঃসামান্য হওয়ার পরে তাদের অ্যাপ্লিকেশনগুলি সঠিকভাবে কাজ করতে বিকাশকারীদের কী করতে হবে expla তারা ব্যাখ্যা করছে))
দ্রষ্টব্য : এই উত্তরটি "কিছু অ্যাপ্লিকেশনগুলিকে এসডি কার্ডে স্থানান্তরিত করা যায় না কেন" এ সাধারণ তথ্য হিসাবে কাজ করে
উত্স: অ্যান্ড্রয়েড বিকাশকারী: অ্যাপ্লিকেশন ইনস্টলের অবস্থান ।