大家好,欢迎来到IT知识分享网。
首先,看到这个名字,第一反应就是我们必须对apk进行正式的签名:
第一步:做一个正式的签名
第二步:将签名的keyAlias keyPassword storePassword storeFile信息配置到build.gradle下:
signingConfigs { release { //jks文件放在项目文件的最外层,和app文件夹在同一层 storeFile file('../quantum.jks') storePassword 'sms' keyAlias 'smsAlias' keyPassword 'sms' } } buildTypes { release { //必须添加这句话 开启调试模式 debuggable true minifyEnabled false //正式签名的引用 signingConfig signingConfigs.release proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' }
第三步:同步项目后,选择as工具右边的gradle,编译正式的资源,点击红色的部分 如下图
第四步:同样是在gradle下,开始安装正式apk,点击红色的部分(备注:installRelease一般在install 下)如下图
第五步:开始调试
将程序运行起来,然后需要的地方打断点,最后运行
即可:最后说明 调试一定要和log的方式结合起来,这样的方式效果最佳
快速吊起第三方app:
通过意图:intent
intent.setClassName(包名,启动页面);
或者intent.setComponse();
最简单快速的方法:
public void openActivity() { // 获取包管理器 PackageManager manager = getPackageManager(); // 指定入口,启动类型,包名 Intent intent = new Intent(Intent.ACTION_MAIN);//入口Main intent.addCategory(Intent.CATEGORY_LAUNCHER);// 启动LAUNCHER,跟MainActivity里面的配置类似 intent.setPackage(appName);//包名 //查询要启动的Activity List<ResolveInfo> apps = manager.queryIntentActivities(intent, 0); if (apps.size() > 0) {//如果包名存在 ResolveInfo ri = apps.get(0); // //获取包名 String packageName = ri.activityInfo.packageName; //获取app启动类型 String className = ri.activityInfo.name; //组装包名和类名 ComponentName cn = new ComponentName(packageName, className); //设置给Intent intent.setComponent(cn); //根据包名类型打开Activity startActivity(intent); } else { Toast.makeText(this, "找不到包名;" + appName, Toast.LENGTH_SHORT).show(); } }
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/154330.html