2010-04-14 15 views
6

मेरे एंड्रॉइड एप्लिकेशन को अलग-अलग मोबाइल देश कोडों पर अलग-अलग प्रतिक्रिया करने की आवश्यकता है।एंड्रॉइड एमुलेटर में मैं मोबाइल कंट्री कोड (एमसीसी) कैसे बदलूं?

ऐसा लगता है कि यह mcc310 (यूएस) पर हार्डकोड किया गया है। मैं TelephonyManager.getSimCountryIso() से या res/values-mcc123/ जैसे संसाधन फ़ोल्डर का उपयोग कर इस मान को पढ़ सकता हूं लेकिन मैं इस मान को एमुलेटर में कैसे सेट करूं?

उत्तर

0

एमुलेटर पर: सेटिंग-> वायरलेस और नेटवर्क-> मोबाइल नेटवर्क-> एक्सेस पॉइंट नाम पर जाएं। सेट एपीएन में एमसीसी मान बदलने का प्रयास करें और फिर अपना कोड आज़माएं।

+0

अच्छा विचार, लेकिन यह काम नहीं किया।जब मैंने कोशिश की तो एपीएन सूची से गायब हो गया, और मेरा आवेदन अब नेटवर्क तक नहीं पहुंच सका। – neu242

+0

ठीक है, मेरे मामले में एपीएन गायब हो गया और मुझे पता चला: जब मैंने ब्राउजर को निकाल दिया तो "कोई नेटवर्क कनेक्शन नहीं"। लेकिन जब मैंने अलर्ट ठीक किया, तो मैं इंटरनेट सर्फ करने में सक्षम था। अजीब सा व्यवहार। वैसे भी, आप एपीएन पृष्ठ पर "डिफ़ॉल्ट पर रीसेट करें" कर सकते हैं और अपना पिछला एपीएन वापस प्राप्त कर सकते हैं। – Samuh

0

पता है कि एमसीसी पर निर्भर हर देश में हमेशा सही नहीं होता है। उदाहरण के लिए Digicell कई देशों में एक एमसीसी + एमएनसी का उपयोग करें। यह भी समझें कि एमसीसी का पूरा विचार नेटवर्क बिंदु के दृष्टिकोण से बल्कि लुभावना है। यह जानना अप्रासंगिक है कि क्या आप जर्मनी में हैं या नीदरलैंड में हैं यदि आप दोनों बार एटी & टी हैंडसेट के साथ टी-मोबाइल पर हैं।

+0

जबकि मैं पूरी तरह से सहमत हूं, यह वास्तविक प्रश्न का उत्तर नहीं देता है। –

0

एंड्रॉइड एमुलेटर पर सेटिंग्स के माध्यम से एमसीसी/एमएनसी को बदलना संभव नहीं लगता है, हर बार जब यह पूर्व कॉन्फ़िगर किया गया "टी-मोबाइल" एपीएन सूची से गायब हो जाएगा और नेटवर्क कनेक्टिविटी खो जाती है। मैंने बदलाव के बाद स्वचालित रूप से एमुलेटर को रीबूट भी किया है।

कार्यक्रम संबंधी रास्ता या तो काम नहीं करता, APN गायब हो जाएगा सही होने के बाद:

[email protected]_x86:/ # content update --uri content://telephony/carriers/ --bind name:s:'TheAPN' --bind apn:s:apn.operator.net --bind numeric:i:12345 --bind user:s: --bind password:s: --bind server:s: --bind proxy:s: --bind mmsproxy:s: --bind mmsc:s: --bind type:s: --bind mcc:i:123 --bind mnc:i:45 --bind current:i:1 --where _id=1 

एक साथ संभव तरीके कि MSISDN या IMEI को बदलने की अनुमति में एमुलेटर हैकिंग से है, हालांकि हो सकता है।

0

एमुलेटर में एमसीसी + एमएनसी बदलना केवल एडीबी के साथ किया जा सकता है। एमुलेटर में एमसीसी + MNC को बदलने के लिए, एशियाई विकास बैंक से कनेक्ट निम्नलिखित

adb -s 127.0.0.1:53001 shell 

कर फिर अपने देश कोड वहाँ डाल दिया। 23801 डैनिश कोउट्री कोड है।

setprop persist.<name of the emulator>.mccmnc 23801 

Droid4X एमुलेटर के लिए, यह

setprop persist.droid4x.mccmnc 23801 

रीबूट एमुलेटर है।

+0

संपत्ति सेट है, लेकिन मुझे नहीं लगता कि यह काम करता है - TelefonyManager getSimCountryIso() afaik –

+0

लौटने पर इस संपत्ति को नहीं पढ़ता है यह Droid4x – prouser135

7

को बदलने के लिए क्या TelephonyManager.getSimCountryIso() रिटर्न, बस निष्पादित

adb shell setprop gsm.sim.operator.iso-country no 

और यह अब कोई (नॉर्वे) देता है।

आप बदलना क्या TelephonyManager.getSimOperator() रिटर्न (एमसीसी + MNC) तो अमल

adb shell setprop gsm.sim.operator.numeric 24201 

चाहते हैं और आप 01 (Telenor) के लिए 242 (नॉर्वे) और MNC एमसीसी बदल दिया है।

देखने के लिए आप तो बदल निष्पादित

adb shell getprop 

यह दोनों AVD और Genymotion पर काम करने के सत्यापित किया गया है सकते हैं, जो अन्य संपत्तियों। हालांकि, यह इन गुणों को लगातार नहीं बदलता है।

+0

के लिए ठीक काम करता है यह काम करता है! महान टिप भी जांच रही है कि कौन से प्रोप सेट किए जा सकते हैं! धन्यवाद – speedynomads

+0

यह मेरे लिए काम नहीं करता है, अगर मैं सेटप्रॉप के तुरंत बाद एक गेटप्रॉप करता हूं तो मुझे अभी भी "हमें" मिलता है। कोई विचार क्यों? –

+0

@AlexandruCristescu यह एक एमुलेटर पर है? –

संबंधित मुद्दे