在Android 4.0及更高版本中以编程方式清除自己应用的默认值是否可行?如果可能,有人可以指出我正确的方向
答案 0 :(得分:9)
您无法在任何Android版本中以编程方式将应用设置为默认操作。
这是出于安全原因,因为恶意应用可以利用此功能成为任何用户操作的默认设置,窃取个人信息或使设备无用等。
充其量,在您第一次运行时,您可以使用虚拟数据启动选择器意图,并要求用户将您的应用设置为默认值。
编辑:
我的错误。我以为你想设置默认值。
PackageManager
中的clearPackagePreferredActivities()将清除特定应用的默认值,无论您传递的是哪个包名称。
答案 1 :(得分:2)
PreferenceManager.getDefaultSharedPreferences(context).edit().clear().commit();