কীভাবে কোনও অ্যাপ্লিকেশন হিমশীতল প্রযুক্তিগতভাবে কাজ করে?


22

লিংক 2 এসডি এবং টাইটানিয়াম ব্যাকআপের মতো অ্যাপ্লিকেশনগুলি অন্যান্য অ্যাপ্লিকেশনগুলিকে "হিমায়িত" করতে সক্ষম হয়, এটি এগুলিকে অপসারণ না করে অক্ষম করে। এটি অর্জনের জন্য এই অ্যাপ্লিকেশনগুলি কী করে?

উত্তর:


28

টাইটানিয়াম ব্যাকআপ ইত্যাদি কেবল Package Manager (pm)কোনও অ্যাপ্লিকেশন হিম করতে অন্তর্নির্মিত ব্যবহার করে । pmঅ্যাপ্লিকেশনগুলি চালানো থেকে এবং লঞ্চারে প্রদর্শিত হতে বাধা দেওয়ার জন্য একটি বৈশিষ্ট্য রয়েছে। এটি ব্যবহার করতে, টাইটানিয়াম ব্যাকআপ ইত্যাদি নিম্নলিখিত কমান্ডটি প্রয়োগ করে:

সন্ধ্যা {প্যাকেজ_নাম dis অক্ষম করুন

ডেডিকেটেড ফ্রিজার অ্যাপ ব্যবহার না করে আপনি নিজেই অ্যাপস হিম করতে পারেন। কেবলমাত্র টার্মিনাল এমুলেটর বা উপরের কমান্ডটি ব্যবহার করুন ADB Shell

উদাহরণস্বরূপ, আপনি যদি জমাট করতে চান তবে কমান্ডটি ব্যবহার করে রুটটিতে Stock Web Browserখুলুন Terminal Emulatorএবং স্যুইচ করুন su। তারপরে, মৃত্যুদন্ড কার্যকর করুন # pm disable com.android.browser
এটা ফিরে আসবে #Package com.android.browser new state: disabled। সম্পন্ন!
অ্যাপ্লিকেশন আইকনটি চলে গেছে তা দেখতে আপনার লঞ্চারটি পুনরায় চালু করুন (কিছু ডিভাইসগুলির পুনরায় বুট লাগতে পারে)।

অ্যাপটিকে ডিফ্রাস্ট করতে, কেবল কমান্ডের disableসাথে প্রতিস্থাপন করুন enable


এখানে বর্ণিত কিল-স্টপ, কিল-কন্ট কমান্ডের মতোই কি একইরকম? linuxpoison.blogspot.com/2007/11/…
NoBugs

@ NoBugs আপনার ডিভাইসটি পুনরায় বুট করুন। কোনও অ্যাপ্লিকেশন পুরোপুরি অক্ষম করার জন্য কিছু ডিভাইসের এটির প্রয়োজন need এবং হ্যাঁ, এটি কমান্ড কমান্ড নয়।
অ্যান্ড্রয়েড কুইসিতো

ঠিক। কখনও কখনও pm disableকেবল "খুন" বলে, তারপরে তত্ক্ষণাত্ প্রক্রিয়াটি আবার শুরু হয়। কিল - স্টপ পিড ভাল। psআউটপুটে আপনি দেখতে পাচ্ছেন কোনটি বন্ধ হয়ে গেছে ।
NoBugs

13

আমি খুঁজে পেয়েছি কিভাবে pm disableকাজ করে:

আপনি যদি চালান cat /system/bin/pm, এটি দেয়:

# Script to start "pm" on the device, which has a very rudimentary
# shell.
#
base=/system
export CLASSPATH=$base/framework/pm.jar
exec app_process $base/bin com.android.commands.pm.Pm "$@"

স্পষ্টতই এটি জাভা থেকে আমরা যে প্যাকেজম্যানেজারটি ব্যবহার করি তার সমান, এটি এটিকে ডাকছে - কোনও মূল অ্যাপ্লিকেশন যাতে কোনও ব্যবহারকারী অ্যাপ সরাসরি প্রবেশ করতে পারে না।

আপনি ব্যবহার করে কিছু হিমায়িত হয়েছে কিনা তা পরীক্ষা করতে পারেন

getPackageManager().getApplicationEnabledSetting( the package name ) ==
        getPackageManager().COMPONENT_ENABLED_STATE_DISABLED)

-4

ইউনিক্স সিস্টেমে ফাইলগুলির 3 টি অনুমোদন রয়েছে: পড়ুন, লিখুন এবং সম্পাদন করুন।

(3 টি বিভাগের লোকের জন্য: ফাইলের মালিক [সাধারণত এটির নির্মাতা], একদল লোক এবং অন্য সকল, তবে এটি বিষয়টির বাইরে out

আপনি যদি ফাইলটির নির্বাহের অনুমোদন অপসারণ করেন তবে এটি আর চালু করা যাবে না (কার্যকর করা হবে)।


হ্যালো ড্রালপুওপ অ্যান্ড্রয়েড অ্যাপ্লিকেশন বাইনারি নয়, সুতরাং এক্সিকিউটেবল অনুমতি যুক্ত করা বা অপসারণ করা তাদের মৃত্যুদণ্ডে কোনও তাত্পর্যপূর্ণ করে না।
ফায়ারলর্ড

অ্যান্ড্রয়েড হ'ল সিস্টেম 5 ইউনিক্স, যেখানে (উদাহরণস্বরূপ) শেল স্ক্রিপ্টগুলি বাইনারি নয়, তবুও সম্পাদনযোগ্য অনুমতি যুক্ত বা অপসারণের ফলে পার্থক্য হয়ে যায়।
dralpuop

কোনও শেল স্ক্রিপ্ট, বা অ্যাপ্লিকেশনগুলির জন্য কোনও তাত্পর্য না করে সরাসরি কোনও ইন্টারপ্রেটারের পক্ষে এটি আর্গুমেন্ট হিসাবে প্রেরণ করে এক্সিকিউটেবল বিট সেট ছাড়াই একটি শেল স্ক্রিপ্ট কার্যকর করা যায়। প্রশ্ন ও প্রশ্নটি অ্যাপ্লিকেশনগুলি অ্যান্ড্রয়েড অ্যাপ্লিকেশনগুলি সম্পর্কে, শেল স্ক্রিপ্টগুলির বিষয়ে নয়।
ফায়ারলর্ড

1
অ্যান্ড্রয়েডে অ্যাপস কীভাবে চালিত হয় তা জানতে এই উত্সটি ব্যবহার করে দেখুন। github.com/dogriffiths/HeadFirstAndroid/wiki/...
Firelord
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.