हवाई जहाज मोड के बाद पिन-अनुरोध को निष्क्रिय करें


10

फोन पर स्विच करते समय, एक डिफ़ॉल्ट रूप से सिम-पिन दर्ज करने के लिए कहा जाता है - जो कि एक अच्छा सुरक्षा उपाय है, जिससे "अजनबियों" को आपकी लागत पैदा करने से रोका जा सके। अब हवाई जहाज मोड से लौटते समय भी यही लागू होता है: किसी को फिर से सिम-पिन दर्ज करना होगा। जो कुछ ऊर्जा-बचतकर्ताओं को बेकार कर देता है: यदि कोई ऐप उदाहरण के तौर पर सिग्नल लॉस पर एयरप्लेन मोड में प्रवेश करता है (देखें: सेल स्टैंडबाय क्या है और मैं इसे अपनी बैटरी खाने से कैसे रख सकता हूं? ), यह उपयोगकर्ता के संपर्क के बिना सामान्य ऑपरेशन में लौटने में असमर्थ होगा ?

मैं इसे चुनिंदा रूप से अक्षम करने का तरीका ढूंढ रहा हूं : क्या डिवाइस को पावर करते समय पिन अनुरोध सक्रिय है - लेकिन एयरप्लेन मोड से लौटने पर सिम-पिन के लिए नहीं पूछा जा रहा है।

कृपया इसे "कीगार्ड" से भ्रमित करें: मैं स्क्रीन लॉक (पिन / पैटर्न / पासवर्ड) के बारे में नहीं पूछ रहा हूं। यहां मैं अपना रास्ता चारों ओर जानता हूं, क्योंकि एप्लिकेशन के लिए उपयोग करने के लिए एक एपीआई है (इसलिए मैं उदाहरण के लिए इसे टस्कर के साथ अस्थायी रूप से बंद कर सकता हूं )।

मुझे पता है कि यह सैमसंग उपकरणों के साथ काम करता है - लेकिन मैं अधिमानतः एक उपकरण स्वतंत्र समाधान चाहता हूं जो सभी निर्माताओं के लिए काम करता है।


2
वास्तव में! मुझे उपरोक्त प्रश्न से उद्धृत करने दें: मैं चुनिंदा रूप से इसे अक्षम करने का एक तरीका ढूंढ रहा हूं - चेक को पूरी तरह से अक्षम करने के लिए नहीं। मुझे पता है कि यह पूरी तरह से अक्षम हो सकता है (जो मैं वर्तमान में उपयोग कर रहा हूं) - लेकिन मैं इसे केवल एयरप्लेन मोड से वापस स्विच करने के लिए अक्षम करना चाहता हूं, डिवाइस स्टार्टअप के लिए नहीं।
इज़ी

जवाबों:


1

अस्वीकरण

  1. इसके लिए जड़ चाहिए। उस के आसपास कोई रास्ता नहीं है।
  2. आपका डिवाइस Android 4.1+ चलना चाहिए
  3. यह वर्कअराउंड कुछ उपयोगकर्ताओं के लिए बहुत उन्नत हो सकता है। केवल इसे लागू करने का प्रयास करें जब आप जानते हैं कि आप क्या कर रहे हैं।
  4. अगर कुछ गड़बड़ हो जाता है या Ragnarök प्रक्रिया के दौरान शुरू होता है, तो मुझे जिम्मेदार नहीं ठहराया जा सकता। आप अपने जोखिम पर ऐसा कर रहे हैं। सावधानी के साथ आगे बढ़ें।
  5. मैं उल्लिखित किसी भी mods के लेखक या अन्यथा से संबद्ध नहीं हूँ। मुझे केवल यह मिला और मैं इसे आपके लाभ के लिए साझा कर रहा हूं।

कारगर युक्तियाँ

मुझे उस समस्या के लिए एक वर्कअराउंड मिला, जो सैमसंग गैलेक्सी एस 2 पर सियानोजेनमॉड 10.2 और डोरिमनएक्स कर्नेल 9.41 के साथ खूबसूरती से काम कर रहा है। आवश्यक कदम इस प्रकार हैं:

  1. सुनिश्चित कर लें की आपका उपकरण रूटेड है।

  2. Xposed Framework Installer डाउनलोड और इंस्टॉल करें ।

  3. जब Xposed निकट भविष्य में कहीं भी जड़ मांगता है, तो उसे अनुदान दें

  4. ऐप को खोलें और on Framework-ab पर क्लिक करें ।

  5. क्लिक करें Install/Update

  6. रिबूट

  7. डाउनलोड करें और जेली बीन 4.x एयरप्लेन मोड हेल्पर स्थापित करें ।

  8. Xposed Framework Installerफिर से ओपन करें और चुनें Modules

  9. टिक (सक्रिय सेट) Jelly Bean 4.x Airplane Mode Helper

  10. रिबूट

  11. खोलो Jelly Bean 4.x Airplane Mode Helper

  12. टिक (सेट सक्रिय) सक्षम

  13. रिबूट

बस! हवाई जहाज मोड पिछले Android संस्करण में के रूप में फिर से काम करना चाहिए और करता नहीं किसी भी अब बंद होने पर किया जा रहा सिम पिन पूछें। यह अभी भी स्टार्टअप पर करता है, इस प्रकार आपके सिम-कार्ड को कुछ हद तक सुरक्षित रखता है। मैंने यहां वर्णित एक (Thx a गुच्छा, Izzy) के समान लामा स्थान प्रोफाइल के साथ एक स्वचालित बैटरी बचत प्रक्रिया की स्थापना की और यह त्रुटिपूर्ण रूप से काम कर रहा है।

गुड लक, दोस्तों!


1
आपके उत्तर के लिए बहूत बहूत धन्यवाद! मैंने इसे फ़ॉर्मेटिंग (सूचियों) में सुधार करने के लिए संपादित किया है और इस तथ्य को जोड़ा है कि इसके लिए जेबी + की आवश्यकता है। जैसा कि मेरे डिवाइस अभी तक जेबी नहीं चला रहे हैं, मैं इसका परीक्षण नहीं कर सकता हूं - लेकिन मुझे संदेह है कि आप इस सवाल का सबसे महत्वपूर्ण हिस्सा याद कर सकते हैं (कम से कम आप इसका उल्लेख नहीं करते हैं): क्या यह हवाई जहाज से लौटते समय सिम-पिन मांगता है मोड - या कि इस तरह से छोड़ दिया जा सकता है?
इज़ी

1
बाकी आश्वासन दिया मैं पूरी तरह से अपनी समस्या का हो गया और मेरा उत्तर ठीक है कि आप क्या ढूंढ किया गया है;) - यह है नहीं है जब हवाई जहाज मोड से लौटने के सिम पिन पूछें, लेकिन यह अभी भी बूट पर करता है। इस प्रकार, आपकी सुरक्षा रखी जा रही है लेकिन आपकी बैटरी सेविंग स्क्रिप्ट फिर से काम कर रही है। स्वरूपण उन्नयन के लिए धन्यवाद!
फजीक्यू

मैंने सबसे महत्वपूर्ण जानकारी जोड़ी क्योंकि आप सही थे - मैं इस तथ्य का उल्लेख करना पूरी तरह से भूल गया कि यह वास्तव में हवाई जहाज मोड के बाद आपके सिम को फिर से अनलॉक करने की आवश्यकता को दूर करता है।
फजीक्यू

1
इस मामले में, यह वही है जो मैं बाद में था: मैन्युअल हस्तक्षेप के बिना स्वचालित नौकरियां काम करती हैं, लेकिन "इनिशियलाइज़ेशन" (यानी बूट के बाद) की बात आने पर डिवाइस अभी भी संरक्षित है। अति उत्कृष्ट! मैं इसे अभी के लिए upvote। जैसा कि मैं t0mm13b के समाधान का परीक्षण नहीं कर सकता, मुझे आपके "स्वीकार" के विषय में आप पर भरोसा करना होगा: यह अब तक के सबसे अधिक आशाजनक (और मुक्त!) समाधान की तरह दिखता है, हालांकि जेबी + तक सीमित है।
इज़ी

आप जानते हैं, यह मज़ेदार है कि मैं वहां कैसे पहुंचा। मुझे आपका प्रश्न और उत्तर सेल स्टैंडबाय समस्या के लिए मिला और जल्द ही हवाई जहाज मोड-सिम-पिन-समस्या के साथ समाप्त हुआ। चूंकि मैं पिछले कुछ समय से Xposed फ्रेमवर्क का उपयोग कर रहा हूं, मुझे एक xposed मॉड्यूल की तलाश करने का विचार था जो इस मुद्दे से निपटेगा। :)
फजी क्यू २ '

8

उत्तर स्रोत में निहित है ... ऐसा लगता है कि पिन-लॉक का अनुरोध करने की संपत्ति में बनाया गया है build.propया default.prop

735 और 755 लाइनों के बीच टेलीफोनी मैनजर स्रोत में पाए गए संदर्भ पर एक नजर डालें। संक्षिप्तता के लिए,

public int getSimState() {
        String prop = SystemProperties.get(TelephonyProperties.PROPERTY_SIM_STATE);
        if ("ABSENT".equals(prop)) {
            return SIM_STATE_ABSENT;
        }
        else if ("PIN_REQUIRED".equals(prop)) {
            return SIM_STATE_PIN_REQUIRED;
        }
        else if ("PUK_REQUIRED".equals(prop)) {
            return SIM_STATE_PUK_REQUIRED;
        }
        else if ("NETWORK_LOCKED".equals(prop)) {
            return SIM_STATE_NETWORK_LOCKED;
        }
        else if ("READY".equals(prop)) {
            return SIM_STATE_READY;
        }
        else {
            return SIM_STATE_UNKNOWN;
        }
    }

कुंजी TelephonyProperties.PROPERTY_SIM_STATEजो कहीं और संदर्भित की जाती है , लाइनों 94 और 98 के बीच।

//****** SIM Card
/**
 * One of <code>"UNKNOWN"</code> <code>"ABSENT"</code> <code>"PIN_REQUIRED"</code>
 * <code>"PUK_REQUIRED"</code> <code>"NETWORK_LOCKED"</code> or <code>"READY"</code>
 */
static String PROPERTY_SIM_STATE = "gsm.sim.state";

अपनी मशीन पर यहां स्रोत कोड के माध्यम से खोज करने के बाद, मैं आपको इस बात का विचार दूंगा कि इस विधि getSimStateको कितनी बार कहा जाता है, यह जानने के लिए जावा स्रोत के नामों पर ध्यान दें कि एंड्रॉइड के भीतर इसका एकीकरण कैसे किया जाए, न केवल टेलीफोनी परत में, बल्कि कहीं।

services/java/com/android/server/am/BatteryStatsService.java 219:      int simState = TelephonyManager.getDefault().getSimState();

telephony/java/android/telephony/TelephonyManager.java 523:    public int getSimState() { 551:     * @see #getSimState 562:     * @see getSimState

policy/src/com/android/internal/policy/impl/KeyguardUpdateMonitor.java 478:    public IccCard.State getSimState() {

policy/src/com/android/internal/policy/impl/KeyguardViewMediator.java 545:            final IccCard.State state = mUpdateMonitor.getSimState();

policy/src/com/android/internal/policy/impl/LockPatternKeyguardViewProperties.java 57:        final IccCard.State simState = mUpdateMonitor.getSimState();

policy/src/com/android/internal/policy/impl/LockScreen.java 273:       mStatus = getCurrentStatus(updateMonitor.getSimState());

policy/src/com/android/internal/policy/impl/LockPatternKeyguardView.java 173:                && (mUpdateMonitor.getSimState() == IccCard.State.ABSENT); 217:                final IccCard.State simState = mUpdateMonitor.getSimState(); 469:                && (mUpdateMonitor.getSimState() != IccCard.State.PUK_REQUIRED)) { 512:   secure = mUpdateMonitor.getSimState() == IccCard.State.PIN_REQUIRED 513:                            || mUpdateMonitor.getSimState() == IccCard.State.PUK_REQUIRED; 643:        final IccCard.State simState = mUpdateMonitor.getSimState(); 662:        final IccCard.State simState
= mUpdateMonitor.getSimState();

policy/tests/src/com/android/internal/policy/impl/LockPatternKeyguardViewTest.java 49:        public IccCard.State getSimState() {

क्या उन फ़ाइल नामों को लॉक स्क्रीन में एक सुराग, यूप दिया गया है ...

सिद्धांत

इस बिंदु पर रूट की आवश्यकता होती है, adb shellऔर कॉल getpropकरके setpropऔर ऐसा करने के लिए, केवल एक हिस्सा यह है, आह्वान करके

adb shell getprop नीचे दी गई जानकारी के अनुसार प्रासंगिक जानकारी वापस मिलेगी

sh-4.1# getprop
[gsm.sim.state]: [READY]

लगता है कि यह सूक्ष्म संपत्ति गतिशील रूप से एक बैकिंग संपत्ति की दुकान में बनी हुई है, पावरिंग के क्षण से और तदनुसार समायोजित की जाती है, चीजों की संख्या, सेवा के आधार पर, और गलती से उस हैंडसेट को छोड़ने का उल्लेख नहीं करने के लिए जो सिम-कार्ड को खटखटा सकता है। इसका पाठक जो कार्ड की स्थिति को " नहीं-रेडी " या " अज्ञात " में बदल देगा। ( रेफरी: प्रणाली / कोर / शामिल / cutils / properties.h और प्रणाली / कोर / टूलबॉक्स / [ getprop | setprop ] ग)

अब इस बिंदु पर, सैद्धांतिक रूप से, स्क्रीन को लॉक करने से पहले सेटप्रॉप को आमंत्रित करके, इसे अस्थायी रूप से दरकिनार किया जा सकता है, लेकिन फिर से, जिसे टेलीफोनी परत द्वारा रीसेट किया जा सकता है! कोशिश की है कि नहीं! जो इस के लिए अग्रणी है ...

निष्कर्ष

एक ही तरीका है इस बंद किया जा सकता, प्रभावी ढंग से करने के लिए है वास्तविक सिम कार्ड पर पिन-लॉक अनुरोध को निष्क्रिय । यही वह जगह है जहां "जादू" बिट-फ्लैग उस पर संग्रहीत किया जाता है, जिसमें टेलीफोनी की आरआईएल परत मालिकाना htc / samsung / क्वालकॉम की लाइब्रेरी के माध्यम से इसे पढ़ती है, और जो संपत्ति के "पिन_अक्वायर्ड" के माध्यम से संपत्ति को बनाए रखने से रोकती है। Android की परतें।

केवल एंड्रॉइड डेवलपर्स के लिए एक संभावित काम-के आसपास :)

इसके लिए स्रोत को हैक करना और उसकी पुन: स्थापना की आवश्यकता होगी। हवाई जहाज मोड के लिए, उस मोड में प्रवेश करते समय और हवाई जहाज मोड को छोड़ते हुए, संपत्ति को दो भागों में विभाजित किया जा सकता है, gsm.sim.state के रूप में छोड़ा जा सकता है, लेकिन किसी अन्य संपत्ति को इस तरह से तैयार करना, gsm.sim.state। airplane.mode और उसी के साथ एक मान निर्दिष्ट SIM_STATE_PIN_NOT_REQUIREDकरें, और उस प्रॉपर्टी को पढ़ने के लिए एरोप्लेन मोड चेक को संशोधित करें, और यदि उस पर सेट किया गया है, तो पिन डायलॉग बॉक्स न दिखाएं, अन्यथा आमतौर पर, इसे प्रॉम्प्ट करें।


विस्तृत विवरण के लिए धन्यवाद, t0mm13b! इसलिए हमें यह मान लेना चाहिए कि सैमसंग और एलजी ने आपके द्वारा बताए गए सभी स्थानों में कोड को बदल दिया है - अगर रिपोर्ट मुझे सैमसंग और एलजी उपकरणों के बारे में मिली (जहां लोगों ने कहा कि वे सिम पिन चेक को अलग से अक्षम कर सकते हैं, जैसा कि मेरे प्रश्न में वर्णित है) सही बात?
इज़ी

एक बार फिर धन्यवाद! यदि आप बता सकते हैं कि सीएम में उस सेटिंग को ढूंढना है, और जब से यह वहां है, तो यह पहले से ही एक बड़ी मदद होगी - जैसा कि सीएम कई उपकरणों के लिए उपलब्ध है :) मेरे डिवाइस सभी सीएम 7.x चल रहे हैं, इसलिए मैं सत्यापित कर सकता है - हालांकि मैंने अभी तक इस तरह की सेटिंग का सामना नहीं किया है (यही वजह है कि मैं उस जगह की तलाश कर रहा हूं जहां पर देखना है?)
इज़ी

सेटिंग> स्थान और सुरक्षा सेटिंग, सिम कार्ड लॉक आज़माएं?
t0mm13b

मुझे उस टिप्पणी को हटाना पड़ा जो आपके प्रश्न का उत्तर था, उसी के भीतर, AOSP स्रोतों में मौजूद है, (पहली बार इसे देखा है क्योंकि मेरा सिम कार्ड पहले से ही अनलॉक है और वैसे भी पिन अनुरोध लॉक से मुक्त है)
t0mm13b

1
जिंजरब्रेड (मेरे Motorola Droid Mil / Milestone। पर CM7.2) की पुष्टि नहीं की गई है। सच है, सिम पिन को वर्णित स्थान पर कॉन्फ़िगर किया जा सकता है - लेकिन केवल / बंद पर, "केवल पावर-ऑन" के लिए चयनात्मक नहीं। माफ़ करना।
इज़ी

3

मुझे यकीन नहीं है कि आपको वह करने की ज़रूरत है जो आप करने की कोशिश कर रहे हैं।

आप इसके बजाय, हो सकता है:

  • मोड Taskerको सक्षम / अक्षम करने वाली हर चीज़ को चालू / बंद करने के लिए दो कार्य सेट करें Airplane
  • कभी भी वास्तव में अपने Airplaneमोड का उपयोग न करें। अपने Taskerकार्यों का उपयोग करें ।

आपको यह देखना होगा कि क्या कोई ऐप स्वचालित रूप से हार्डवेयर रेडियो चालू करने में सक्षम है या नहीं । यह देखने के लिए देखें कि क्या कोई ऐप सिंक करने के लिए बैकग्राउंड या जो भी करने की कोशिश करता है, वे विकलांग रेडियो पर टॉगल करने की कोशिश कर सकते हैं। यदि ऐसा है, तो उस ऐप की क्षमता को अपने जैसे वाईफाई पर स्वचालित रूप से चालू करें। मैं यह कहता हूं क्योंकि Airplaneमोड ने निश्चित रूप से अनपेक्षित वाईफाई कनेक्शन को पहले बंद कर दिया था, लेकिन अब नहीं, यदि आप इस उत्तर को आजमाते हैं।

आप Taskerहमेशा Airplaneशटडाउन पर मोड में जाने के लिए भी सेट कर सकते हैं । इस तरह आपको बूट समय पर पिन लॉक दिखाई देगा।


धन्यवाद, जीरो 2 एक्सएक्सएक्स - लेकिन मैं अकेले मेरे लिए नहीं पूछ रहा हूं, और विशेष रूप से टास्कर के लिए नहीं (मैं इस तथ्य से अवगत हूं कि मैं यहां चीजों को अलग से अक्षम कर सकता हूं; लेकिन सेल रेडियो को अलग से अक्षम करना मेरे माइलस्टोन के साथ काम नहीं करता है)। जुड़े सवालों के जवाब में, मैंने दो अन्य ऐप का भी उल्लेख किया है। कथित तौर पर उन्हें पिन की आवश्यकता होती है या तो वे प्रवेश या अक्षम होते हैं, क्योंकि वे हवाई जहाज मोड का उपयोग करते हैं। तो कृपया समझें कि मैं एक विशिष्ट टास्कर समाधान नहीं चाहता हूं (जैसा कि बहुत से टास्कर बहुत जटिल लगते हैं), बल्कि मैंने जो भी पूछा उसके लिए एक सामान्य समाधान है: केवल हवाई जहाज मोड से वापसी पर पिन अनुरोध को अक्षम करें।
इज़्ज़

ठीक है। मैं स्तब्ध हूँ, फिर। सॉफ्टवेयर के साथ टॉगल करने का एक तरीका मिल गया है, लेकिन अधिक बारीक तरीके से। सैमसंग आपको कैसे करने देता है?
जीरो 2 सीएक्स

मैं नहीं बता सकता (सैमसंग डिवाइस नहीं है)। लेकिन मुझे रिपोर्ट मिली है कि यह एलजी के साथ कई (सभी?) सैमसंग उपकरणों पर भी उल्लेखनीय है। अपने माइलस्टोन पर मैंने स्पष्ट रूप से जांच नहीं की, क्योंकि मेरी वर्तमान सिम मेरे एचटीसी बज़ / वाइल्डफ़ायर में थी, क्या मुझे इस उद्देश्य के लिए सिम-पिन को पूरी तरह से अक्षम करना था।
इज़्ज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.