大佬教程收集整理的这篇文章主要介绍了如何获取Android应用程序尝试从设备中删除/卸载的操作,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在从设备中删除应用程序的事件,但我想在删除应用程序之前显示弹出窗口.我正在尝试实现与“App Lock”应用程序相同的功能.
这是我通过广播接收器获取应用程序删除事件的代码.但是关于卸载按钮单击或弹出单击之前,我完全是空白.请指导我正确的方向.
提前致谢.
public class MainActivity extends Activity { CustomBroadcastReceiver mApplicationsReceiver; @Override protected void onCreate(Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); setContentView(R.layout.activity_main); mApplicationsReceiver=new CustomBroadcastReceiver(); IntentFilter filter = new IntentFilter(Intent.ACTION_PACKAGE_ADDED); filter.addAction(Intent.ACTION_PACKAGE_REMOVED); filter.addAction(Intent.ACTION_PACKAGE_CHANGED); filter.addAction(Intent.ACTION_PACKAGE_ADDED); filter.addAction(Intent.ACTION_PACKAGE_replaCED); filter.addAction(Intent.ACTION_PACKAGE_RESTARTED); filter.addAction(Intent.ACTION_PACKAGE_VERIFIED); filter.addAction(Intent.ACTION_PACKAGE_INSTALL); filter.addAction(Intent.ACTION_PACKAGE_FIRST_LAUNCH); filter.addAction(Intent.ACTION_Delete); filter.addAction(Intent.ACTION_DEFAULT); filter.addDatascheR_187_11845@e("package"); registerReceiver(mApplicationsReceiver,filter); } } public class CustomBroadcastReceiver extends BroadcastReceiver { /** * This method captures the event when a package has been removed */ @Override public void onReceive(Context context,Intent intent) { System.out.println("Hello from CustomBroadcastReceiver"); if (intent != null) { String action = intent.getAction(); System.out.println("L1123 : "+action); if (action.equals(intent.ACTION_PACKAGE_REMOVED)) { //Log the event capture in the log file ... System.out.println("The package has been removed"); } } } } <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://scheR_187_11845@as.android.com/apk/res/android" package="com.bitS.Uninstallappdemo" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" /> <uses-permission android:name="android.permission.broaDCAST_PACKAGE_REMOVED" /> <uses-permission android:name="android.permission.INSTall_PACKAGES" /> <uses-permission android:name="android.permission.deletE_PACKAGES" /> <uses-permission android:name="android.permission.broaDCAST_PACKAGE_ADDED" /> <uses-permission android:name="android.permission.broaDCAST_PACKAGE_CHANGED" /> <uses-permission android:name="android.permission.broaDCAST_PACKAGE_INSTALL" /> <uses-permission android:name="android.permission.broaDCAST_PACKAGE_replaCED" /> <application android:allowBACkup="true" android:icon="@drawable/ic_launcher" android:label="@String/app_name" android:theme="@style/AppTheme" > <activity android:name=".MainActivity" android:label="@String/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <!-- <receiver android:name=".CustomBroadcastReceiver" > <intent-filter> <action android:name="android.intent.action.PACKAGE_REMOVED" /> <action android:name="android.intent.action.PACKAGE_ADDED" /> <category android:name="android.intent.category.DEFAULT" /> <action android:name="android.intent.action.PACKAGE_ADDED" /> <action android:name="android.intent.action.PACKAGE_CHANGED" /> <action android:name="android.intent.action.PACKAGE_INSTALL" /> <action android:name="android.intent.action.PACKAGE_REMOVED" /> <action android:name="android.intent.action.PACKAGE_replaCED" /> </intent-filter> </receiver> --> </application> </manifest>
核心代码:
ComponentName topActivity = mActivitymanager.getRunningTasks(1).get(0).topActivity; String packag@R_673_8371@ = topActivity.getPackag@R_673_8371@(); String className = topActivity.getClassName(); Log.v(tag,"packag@R_673_8371@" + packageName); Log.v(tag,"className" + className); if ("com.android.packageinstaller".equals(packageName) && "com.android.packageinstaller.UninstallerActivity".equals(className)) { //Do anything you want here }
以上是大佬教程为你收集整理的如何获取Android应用程序尝试从设备中删除/卸载的操作全部内容,希望文章能够帮你解决如何获取Android应用程序尝试从设备中删除/卸载的操作所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。