您的位置:首页 > 移动开发 > Android开发

android安装和卸载程序

2010-10-20 09:51 375 查看
在Android安装卸载程序的源码中我们知道:
< activity android:name=".PackageInstallerActivity">   < intent-filter>   < action android:name="android.intent.action.VIEW" />   < category android:name="android.intent.category.DEFAULT" />   < data android:scheme="content" />   < data android:scheme="file" />   < data android:mimeType="application/vnd.android.package-archive" />   < /intent-filter>   < /activity>   < activity android:name=".UninstallerActivity">   < intent-filter>   < action android:name="android.intent.action.VIEW" />   < action android:name="android.intent.action.DELETE" />   < category android:name="android.intent.category.DEFAULT" />   < data android:scheme="package" />   < /intent-filter>   < /activity>

因为根据里面的权限我们可以 从sd卡安装一个程序:
String fileName = Environment.getExternalStorageDirectory() + "/myApp.apk";      Intent intent = new Intent(Intent.ACTION_VIEW);     intent.setDataAndType(Uri.parse("file://" + filePath),"application/vnd.android.package-archive");   //或者   //intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive");      startActivity(intent);

Android安装卸载程序的操作中要想卸载一个程序:
Uri packageURI = Uri.parse("package:com.android.myapp");      Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageURI);      startActivity(uninstallIntent);

默认是不支持安装非市场程序的 因此判断一下:
int result = Settings.Secure.getInt(getContentResolver(), Settings.Secure.INSTALL_NON_MARKET_APPS, 0);   if (result == 0) {   // show some dialog here   // ...   // and may be show application settings dialog manually   Intent intent = new Intent();   intent.setAction(Settings.ACTION_APPLICATION_SETTINGS);   startActivity(intent);  }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: