मैं अपने जावा कोड से सिस्टम ऐप इंस्टॉल करने की कोशिश कर रहा हूं, और अब तक, मुझे कोई सफलता नहीं मिली है।
के बाद मैं अब तक क्या किया है है:एंड्रॉइड: प्रोग्रामेटिक रूप से एपीके/सिस्टम/ऐप को कॉपी करना
- मेरा डिवाइस निहित है।
- मेरा "इंस्टॉलर" ऐप सिस्टम ऐप के रूप में स्थापित है। (इसे मैन्युअल रूप से/system/app में कॉपी किया गया)
- मैंने प्लेटफ़ॉर्म कुंजी के साथ इंस्टॉलर एपीके पर हस्ताक्षर किए हैं, और मेरे पास मैनिफेस्ट में
android:sharedUserId="android.uid.system"
है। मैं
Runtime.getRuntime.exec("su")
के लिए कोशिश कर रहा हूं (और कोशिश कर रहा हूं, और फिर कुछ और)। मैं सिस्टम विभाजन कोrw
के रूप में माउंट करना चाहता हूं, एपीके के लिएcat
करें, और फिर सिस्टम विभाजनro
बनाएं। निम्नलिखित आदेशों की सूची निम्नलिखित है:mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system<br> cat /sdcard/application.apk > /system/app/application.apk<br> mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system<br><br>The application.apk here is the app being installed from the installer app. This app is also signed with platform key, and has the sharedUserId configured.
- मैंने मैनिफेस्ट में
INSTALL_PACKAGES
अनुमति के लिए अनुरोध किया है।
मैंने निष्पादन ("") प्रारूप में कई बदलावों की कोशिश की है, जिसमें प्रत्येक आदेश के साथ 'su -c'
का उपयोग करना शामिल है। मुझे टूटा हुआ पाइप अपवाद और सुरक्षा अपवाद मिला है। कभी-कभी, मुझे अपवाद नहीं मिलता है, लेकिन फ़ाइल की प्रतिलिपि नहीं बनाई जाती है।
कृपया मुझे बताएं कि मैं यहां क्या खो रहा हूं। क्या किसी ने यह काम किया है?
धन्यवाद!
संबंधित नोट पर, प्लेटफ़ॉर्म कुंजी के साथ हस्ताक्षरित ऐप और sharedUserId = system के बीच क्या अंतर है; और एक ऐप/सिस्टम/एप में मौजूद है? – Chaitanya
/सिस्टम/ऐप में अनुप्रयोगों के पास अनुमति स्तर 2 तक पहुंच है (जहां तक मुझे पता है 1)। अनुमतियों के बावजूद * अनुमोदित *, सिस्टम के एक साझा यूज़र आईडी के साथ अनुप्रयोग "पैरेंट" एप्लिकेशन को दी गई अनुमतियों का उत्तराधिकारी प्राप्त करते हैं, और इसके अतिरिक्त उसी प्रोसेस आईडी में "पैरेंट" के रूप में चलाया जाता है। विभिन्न एपीआई ऐप की प्रोसेस आईडी की जांच करते हैं, और यदि वे एक विशिष्ट प्रकार के नहीं हैं तो उन्हें एक्सेस से इनकार कर दें। यद्यपि 2 अधिकतर कसकर जुड़े हुए हैं, लेकिन वे हमेशा हाथ में नहीं जाते हैं।यह वर्णन करने का गैर-तकनीकी तरीका है, मुझे यकीन है कि अन्य लोग बेहतर काम करेंगे ... – slinden77