要为所有者用户启用系统应用程序,您可以使用以下代码示例:
public class AppEnableReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String packageName = intent.getData().getSchemeSpecificPart();
if (intent.getAction().equals(Intent.ACTION_PACKAGE_ADDED)) {
// 应用程序已安装
enableApp(context, packageName);
} else if (intent.getAction().equals(Intent.ACTION_PACKAGE_REPLACED)) {
// 应用程序已更新
enableApp(context, packageName);
}
}
private void enableApp(Context context, String packageName) {
try {
PackageManager pm = context.getPackageManager();
pm.setApplicationEnabledSetting(packageName,
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, 0);
} catch (Exception e) {
e.printStackTrace();
}
}
}
通过以上步骤,您的应用程序将能够在系统应用程序安装或更新时自动启用它们。请确保在运行时已授予WRITE_SECURE_SETTINGS权限。