Log.d(TAG," this.getFilesDir().getParent()"+this.getFilesDir().getParent());
西宁网站制作公司哪家好,找成都创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站开发等网站项目制作,到程序开发,运营维护。成都创新互联自2013年起到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联。
this.getFilesDir().getParent()/data/user/0/com.xxx.xxx
com.xxx.xxx为该应用的包名
以后就不用另行去判断是真机还是模拟器的安装之后文件的路径了
该方法直接返回安装之后包所在的路径
手机无法直接查看应用安装之后 应用宝所在的具体路径的 可以root之后 或者开发工具Android Studio点击Device File Explorer等方法查看
打开 Android Studio,然后选择右边的 Gradle 标签,选择一个项目,然后选择 signingReport 这个 Task,双击运行
然后选择右下角的 Gradle Console,就可以看到签名信息了
使用解压工具解压 APK 文件,在 META-INF 文件夹拿到 CERT.RSA 文件。假设 CERT.RSA 文件的路径是 C:\Users\Administrator\Desktop\CERT.RSA 。在 CMD 中输入
就可以得到签名信息了
jks 作为签名文件,也可以通过命令行来查看的其中的签名信息,假设签名文件的名称是 test_release.jks ,在终端中输入
即可得到签名信息
通过PackageManager 来获取已安装的应用包信息。
java代码:
ArrayListAppInfo appList = new ArrayListAppInfo(); //用来存储获取的应用信息数据ListPackageInfo packages = getPackageManager().getInstalledPackages(0);
for(int i=0;ipackages.size();i++) {
PackageInfo packageInfo = packages.get(i);
AppInfo tmpInfo = new AppInfo();
tmpInfo.appName = packageInfo.applicationInfo.loadLabel(getPackageManager()).toString();
tmpInfo.packageName = packageInfo.packageName;
tmpInfo.versionName = packageInfo.versionName;
tmpInfo.versionCode = packageInfo.versionCode;
tmpInfo.appIcon = packageInfo.applicationInfo.loadIcon(getPackageManager());
appList.add(tmpInfo);
}//好啦 这下手机上安装的应用数据都存在appList里了。
那么如何判断一个应用是否为系统应用呢?
java代码:
if((packageInfo.applicationInfo.flagsApplicationInfo.FLAG_SYSTEM)==0){
//非系统应用
}else{
//系统应用
}