Kullanıcının çalışma zamanında etkinleştirebildiği veya devre dışı bırakabileceği iki activity-alias
uyguladık.Activity-Alias, uygulama güncellemesinde kaldırıldı
<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>
Kullanıcıların cihazın uygulama ekran kaplamak değil, onları başlangıçta etkin olması istemiyoruz. Ancak çalışma zamanında, kullanıcı takma adı etkinleştirebilmelidir. Ben PackageManager
ile bunu: Bu başlangıçta cazibe gibi çalışır, ama benim app bir güncelleme yüklendiğinde takma, tekrar devre dışı bırakıldığı
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);
. Sistemin izin verilen durumun manifest tarafından üzerine yazılmasını nasıl engelleyebilirim? Kullanıcının başlangıçta Launcher ile birlikte çalışmasını istemiyorum ve kullanıcının bir güncelleme sonrasında tüm takma ad kısayollarını yeniden oluşturmasını istemiyorum.
PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER
'a benzer bir şeye ihtiyacım var, ancak yalnızca etkinleştirilmiş durum için.
Teşekkürler!
Bir 'String' parametresi olan bir' ComponentName 'kurucusu yok. Gerçek kodunuzu gönderir misiniz? Teşekkürler –
Evet, paketimi çıkardım. Onu düzeltti. – JacksOnF1re