पर हटा दिया गया है मैंने दो activity-alias
लागू किया है कि उपयोगकर्ता रनटाइम में सक्षम या अक्षम करने में सक्षम होना चाहिए।गतिविधि-एलियास ऐप अपडेट
<activity-alias
android:name=".ui.alias.open_location"
android:targetActivity=".ui.activity.location"
android:enabled="false">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity-alias>
मैं उन्हें शुरुआत में सक्षम होने के लिए नहीं करना चाहते, उन डिवाइस के एप्लिकेशन स्क्रीन ऊपर अव्यवस्थित नहीं है। लेकिन रनटाइम में, उपयोगकर्ता उपनाम को सक्षम करने में सक्षम होना चाहिए। मैं PackageManager
के माध्यम से ऐसा:
PackageManager pm = getApplicationContext().getPackageManager();
ComponentName componentName = new ComponentName(context, ".ui.alias.open_location");
pm.setComponentEnabledSetting(componentName,
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP);
यह शुरुआत में आकर्षण की तरह काम करता है, लेकिन उर्फ फिर से अक्षम हो जाता है, मेरे ऐप की एक अद्यतन स्थापित किया गया है जब। मैं सिस्टम को मैनिफेस्ट द्वारा सक्षम स्थिति को ओवरराइट करने से कैसे रोक सकता हूं? मैं नहीं चाहता कि उपयोगकर्ता शुरुआत में लॉन्चर के साथ फ़्लूट करे और मैं नहीं चाहता कि उपयोगकर्ता अद्यतन के बाद सभी उपनाम शॉर्टकट को फिर से बनाना चाहें।
मुझे लगता है कि मुझे PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER
के समान कुछ चाहिए, लेकिन केवल सक्षम स्थिति के लिए।
धन्यवाद!
एक 'स्ट्रिंग' पैरामीटर' वाला एक 'घटक नाम' कन्स्ट्रक्टर नहीं है। क्या आप अपना वास्तविक कोड पोस्ट कर सकते हैं? धन्यवाद –
हां, मैंने अपना पैकेज नाम लिया। ठीक कर दिया। – JacksOnF1re