复制APK文件在一个文件夹中?

时间:2013-10-28 17:23:49

标签: java android xml

我有一个ListView,其中包含设备上安装的所有应用程序。是否有一种方法可以点击应用程序将其相对APK复制到手机中的文件夹中?让我解释一下,例如,我单击浏览器应用程序,将其APK(Browser.apk)复制到Example文件夹中。所以我的例子/ Browser.apk。这是我的OnClick on Application的代码,暂时卸载应用程序,但我会将其替换为文件夹中的复制APK功能。

protected void onListItemClick(ListView l, View v, int position, long id) {
    super.onListItemClick(l, v, position, id);

    ApplicationInfo app = applist.get(position);

    Uri packageUri = Uri.parse("package:"+app.packageName);
    Intent uninstallIntent = new Intent(Intent.ACTION_DELETE, packageUri);
    startActivity(uninstallIntent);
}

1 个答案:

答案 0 :(得分:1)

要以编程方式获取应用程序的.apk文件,您必须:

  1. 获取所有已安装的应用程序
  2. 获取公共源目录
  3. 将文件复制到SDCard
  4. 注意:无需植根。

    snipet代码:

    final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
    mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
    
    final List pkgAppsList = getPackageManager().queryIntentActivities( mainIntent, 0);
    
    for (Object object : pkgAppsList) {
    
        ResolveInfo info = (ResolveInfo) object;
        File file =new File( info.activityInfo.applicationInfo.publicSourceDir);
    
        // Copy the .apk file to wherever
    }