最近看了一款应用叫茄子快传,其中有个功能是能传输手机上已安装的应用的安装包。于是度娘了一下,果然可以。以下为转载内容:
android上所有已安装的应用都会做一个备份,分别存放在三个地方:
1、系统签名的软件:/system/app
2、安装到内存上的非系统签名软件:/data/app
3、安装到sd卡上的非系统签名软件:/mnt/asec/包名-数字/pkg.apk
获取已安装应用程序信息:
private PackageManager packageManager = null;
packageManager = getPackageManager();
List<PackageInfo>mAllPackages=new ArrayList<PackageInfo>();
mAllPackages = packageManager.getInstalledPackages(0);
获取已安装应用程序安装包位置和应用包名字:
for(int i = 0; i < mAllPackages.size(); i ++)
{
PackageInfo packageInfo = mAllPackages.get(i);
Log.i("package path", packageInfo.applicationInfo.sourceDir);
Log.i("apk name", packageInfo.applicationInfo.loadLabel(packageManager) );
}
既然知道了应用包的位置就可以拿来安装或传输了。:)
部分内容转自:
http://blog.csdn.net/xanxus46/article/details/8228366
http://www.cnblogs.com/mainroadlee/archive/2011/05/23/android_get_installed_app.html
文件拷贝
http://blog.csdn.net/etzmico/article/details/7786525