autojs如何使用代码下载安装apk文件?
今天要用autojs做一个安装app的功能,首先我在网上查找关于autojs这方面的资料很少。
但是查找关于android的就很多,众所周知autojs是基于Rhino框架使用java开发的。
所以博主换了一个思路,将java代码转为autojs的代码。
下载文件
首先是下载,这里博主使用autojs的http模块进行下载,然后在写入到文件中
var res=http.get(url);
if (res.statusCode == 200) {
files.writeBytes("/sdcard/1.apk", res.body.bytes())
toast("下载完成,正在安装")
}
autojs自动安装app
然后就是自动安装apk文件
//读入文件
var newApkFile=new java.io.File("/sdcard/1.apk");
var intent = new Intent(Intent.ACTION_VIEW);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
var type = "application/vnd.android.package-archive";
var uri;
if (device.sdkInt > 23) {
//创建url
uri = Packages["androidx"].core.content.FileProvider.getUriForFile(context, app.fileProviderAuthority, newApkFile);
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
} else {
uri = Uri.fromFile(newApkFile);
}
intent.setDataAndType(uri, type);
app.startActivity(intent);