從程式中刪除自己或其他程式
/* 先找出欲刪除的Package Name */
PackageManager manager = context.getPackageManager();
Intent intent = new Intent().setPackage(PACKAGE_NAME);
List<ResolveInfo> infos = manager.queryIntentActivities(intent,PackageManager.GET_INTENT_FILTERS);
/* 如果有的話顯示確認視窗 */
if (infos.size() > 1) {
Builder builder = new AlertDialog.Builder(context);
builder.setMessage("您需要刪除這個程式嗎?");
builder.setPositiveButton("刪除"),
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
/* 刪除指定的PACKAGE_NAME */
Uri packageUri = Uri.parse("package:"+ PACKAGE_NAME);
Intent intent = new Intent(Intent.ACTION_DELETE, packageUri);
context.startActivity(intent);
}
});
builder.show();
}
權限別忘了加上去
<uses-permission android:name="android.permission.DELETE_PACKAGES" />
※如果出現 "Permission is only granted to system apps"
eclipse 狀態列點選 → project → Clean
這可能是Bug
如果此篇對您有幫助,您可以點選廣告給予最大的動力,感謝您的收看。
沒有留言:
張貼留言