优化安装xapk,不成功
This commit is contained in:
@@ -566,6 +566,7 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
|||||||
Toaster.show("文件不存在");
|
Toaster.show("文件不存在");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
XapkUtils xapkUtils =new XapkUtils(MainActivity.this);
|
XapkUtils xapkUtils =new XapkUtils(MainActivity.this);
|
||||||
xapkUtils.setApkFilePath(file.getAbsolutePath());
|
xapkUtils.setApkFilePath(file.getAbsolutePath());
|
||||||
xapkUtils.installXapk();
|
xapkUtils.installXapk();
|
||||||
@@ -579,6 +580,14 @@ public class MainActivity extends BaseMvvmActivity<MainViewModel, ActivityMainBi
|
|||||||
// if (xapkInstaller != null) {
|
// if (xapkInstaller != null) {
|
||||||
// xapkInstaller.installXapk(MainActivity.this);
|
// xapkInstaller.installXapk(MainActivity.this);
|
||||||
// }
|
// }
|
||||||
|
// try {
|
||||||
|
// XapkUtils.unzipXapk(MainActivity.this, file);
|
||||||
|
// File outputDir = new File(getExternalCacheDir(), "xapk_unzip");
|
||||||
|
// XapkUtils.installXapk(MainActivity.this, outputDir);
|
||||||
|
// } catch (IOException e) {
|
||||||
|
// e.printStackTrace();
|
||||||
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void requestPackageInstalls() {
|
private void requestPackageInstalls() {
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ public class XapkUtils {
|
|||||||
if (ZipUtil.containsEntry(mApkFile, "manifest.json")) {
|
if (ZipUtil.containsEntry(mApkFile, "manifest.json")) {
|
||||||
//判断json文件是否存在
|
//判断json文件是否存在
|
||||||
String dirName = FileUtils.getFileNoExName(mApkFile.getAbsolutePath());
|
String dirName = FileUtils.getFileNoExName(mApkFile.getAbsolutePath());
|
||||||
mUnpackPath = mContext.getExternalCacheDir()+ File.separator + "xapk_unzip" + File.separator + dirName;
|
mUnpackPath = mContext.getExternalCacheDir() + File.separator + "xapk_unzip" + File.separator + dirName;
|
||||||
File unpackDir = new File(mUnpackPath);
|
File unpackDir = new File(mUnpackPath);
|
||||||
ZipUtil.unpack(mApkFile, unpackDir);
|
ZipUtil.unpack(mApkFile, unpackDir);
|
||||||
String jsonString = JsonUtils.readJsonFile(unpackDir.getAbsolutePath() + File.separator + "manifest.json");
|
String jsonString = JsonUtils.readJsonFile(unpackDir.getAbsolutePath() + File.separator + "manifest.json");
|
||||||
@@ -304,7 +304,6 @@ public class XapkUtils {
|
|||||||
Toaster.show("正在安装应用");
|
Toaster.show("正在安装应用");
|
||||||
install(packageInstaller, sessionId, mContext);
|
install(packageInstaller, sessionId, mContext);
|
||||||
// }
|
// }
|
||||||
//
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -315,10 +314,9 @@ public class XapkUtils {
|
|||||||
|
|
||||||
// Intent intent = new Intent(context, InstallResultReceiver.class);
|
// Intent intent = new Intent(context, InstallResultReceiver.class);
|
||||||
// PendingIntent pendingIntent = PendingIntent.getBroadcast(
|
// PendingIntent pendingIntent = PendingIntent.getBroadcast(
|
||||||
// context,
|
// context, sessionId, intent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT
|
||||||
// 0, intent,
|
|
||||||
// PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT
|
|
||||||
// );
|
// );
|
||||||
|
|
||||||
Intent intent = new Intent(mContext, InstallActivity.class);
|
Intent intent = new Intent(mContext, InstallActivity.class);
|
||||||
intent.setAction(PACKAGE_INSTALLED_ACTION);
|
intent.setAction(PACKAGE_INSTALLED_ACTION);
|
||||||
PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, 0);
|
PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent, 0);
|
||||||
|
|||||||
Reference in New Issue
Block a user