पर डीटीएमएफ टोन भेजना मैं एक ऐसे प्रोजेक्ट पर काम कर रहा हूं जिसके लिए मेरे ऐप को सक्रिय कॉल के दौरान वॉयस की अपलिंक आवृत्ति पर डीटीएमएफ टोन भेजने में सक्षम होना आवश्यक है।अपलिंक इन-कॉल
मेरे 2 शर्तें हैं:
- हम एक स्वनिर्धारित एंड्रॉयड प्लेटफॉर्म का उपयोग नहीं करते
- हम फोन
मैं कई दिनों के खर्च किया है मेरी कर जड़ की जरूरत नहीं है गृहकार्य और मुझे पता है कि डीटीएमएफ भेजने में इन-कॉल वर्तमान एसडीके/मानक एपीआई द्वारा समर्थित नहीं है। हालांकि, com.android.internal.telephony
में प्रासंगिक कक्षाओं का उपयोग करके मैं इस बात की नकल करने की उम्मीद कर रहा हूं कि मूल फोन ऐप यह कैसे करता है। मैंने this site on how to use internal APIs for standard 3rd party apps का पालन किया।
मैंने एंड्रॉइड ओएस देव पर्यावरण के साथ खुद को भी स्थापित किया है और अपने आंतरिक कार्यों को समझने के लिए एक एमुलेटर पर डीबग मोड में फोन ऐप चलाने में सक्षम हूं।
मैं एक शेयर मानक एमुलेटर पर विभिन्न तरीकों की कोशिश की लेकिन त्रुटियों मुझे मिल रहे थे:
android.uid.phone की sharedUserId का उपयोग कर Phone.apk के स्रोत के आधार पर एक नाम बदली एप्लिकेशन इंस्टॉल करने की कोशिश कर के बाद, मुझे मिला:
Installation error: INSTALL_FAILED_SHARED_USER_INCOMPATIBLE
इस तथ्य के कारण मेरे पास साइन इन करने के लिए सिस्टम प्रमाण नहीं है।
फ़ोन.एपीके के स्रोत से संबंधित डीटीएमएफ टोन कोड भेजने के आधार पर कस्टम ऐप लिखने का प्रयास करने के बाद, मुझे फोनफैक्टरी स्थापित करने में निम्न त्रुटि मिलती है;
java.lang.SecurityException: Permission Denial: not allowed to send broadcast android.provider.Telephony.SPN_STRINGS_UPDATED.
कोई संदेह नहीं है इस तथ्य की वजह मेरे ऐप सही अनुमति नहीं है, हालांकि AndroidManifest.xml Phone.apk के रूप में ही अनुमति के साथ सेटअप है।
मुझे नुकसान हुआ है कि मैं और क्या प्रयास कर सकता हूं। क्या किसी के पास कोई सुझाव है?
अग्रिम धन्यवाद, साइमन।
अरे, क्या इस सुविधा की स्थिति में कोई बदलाव है? क्या मैं मदद कर सकता हूँ? मैंने एएसओपी साइट पर मतदान करने के लिए यह समझने की कोशिश की .. लेकिन मैंने छोड़ दिया। मैं यह भी समझ नहीं पाया कि क्या यह सुविधा स्वीकार की गई थी या बस अटक गई थी? इसकी स्थिति क्या है? –
नवीनतम पैच सेट अस्वीकार कर दिया गया था क्योंकि यह एओएसपी मास्टर पर विलय नहीं करता है। यह अच्छा होगा अगर कोई और इसे उठा सकता है, इसे फिर से भरें और इसे एक नया पैच सेट सबमिट करें। –