http://blog.163.com/benben_long/blog/static/1994582432014219104154971/
比如sd卡里有一个apk文件,可以根据这个apk文件得到他的包名及版本等一切信息。
package com.example.test;
import com.example.androidgametest.R;
import android.app.Activity;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.Environment;
import android.widget.TextView;
public class test extends Activity{
private TextView mTvTest;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
mTvTest=(TextView) findViewById(R.id.tv_test);
PackageManager pm = this.getPackageManager();
PackageInfo info = pm.getPackageArchiveInfo(Environment.getExternalStorageDirectory()+"/TianjinPlugin3.apk", PackageManager.GET_ACTIVITIES);
ApplicationInfo appInfo = null;
if (info != null) {
appInfo = info.applicationInfo;
String packageName = appInfo.packageName;
mTvTest.setText(packageName);
}
}
}
因为要从SD卡读这个apk,所以千万别忘了添加权限permission.READ_EXTERNAL_STORAGE
http://blog.youkuaiyun.com/chuxing/article/details/7219057
1,根据包名判断
List<ResolveInfo> list = context.getPackageManager()
.queryIntentActivities(intent, 0);
if (list.size() > 0) {
return true;
}
return false;
}