jni作为lib使用,优化编译
This commit is contained in:
@@ -2,9 +2,6 @@ package com.example.mir4updater.activity.main;
|
||||
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentSender;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
import android.os.Build;
|
||||
@@ -24,18 +21,8 @@ import com.example.mir4updater.bean.FileItem;
|
||||
import com.example.mir4updater.config.CommonConfig;
|
||||
import com.example.mir4updater.databinding.ActivityMainBinding;
|
||||
import com.example.mir4updater.utils.HashUtils;
|
||||
import com.example.mir4updater.utils.NativeUtil;
|
||||
import com.example.mir4updater.utils.PermissionUtils;
|
||||
import com.google.android.gms.tasks.OnFailureListener;
|
||||
import com.google.android.gms.tasks.OnSuccessListener;
|
||||
import com.google.android.gms.tasks.Task;
|
||||
import com.google.android.play.core.appupdate.AppUpdateInfo;
|
||||
import com.google.android.play.core.appupdate.AppUpdateManager;
|
||||
import com.google.android.play.core.appupdate.AppUpdateManagerFactory;
|
||||
import com.google.android.play.core.install.model.AppUpdateType;
|
||||
import com.google.android.play.core.install.model.UpdateAvailability;
|
||||
import com.hjq.permissions.OnPermissionCallback;
|
||||
import com.hjq.permissions.Permission;
|
||||
import com.hjq.permissions.XXPermissions;
|
||||
import com.hjq.toast.Toaster;
|
||||
import com.trello.rxlifecycle4.RxLifecycle;
|
||||
|
||||
@@ -7,11 +7,10 @@ import android.util.Log;
|
||||
import com.example.mir4updater.base.mvvm.BaseViewModel;
|
||||
import com.example.mir4updater.config.CommonConfig;
|
||||
import com.example.mir4updater.databinding.ActivityMainBinding;
|
||||
import com.example.mir4updater.utils.NativeUtil;
|
||||
import com.ttstd.ttutils.NativeUtil;
|
||||
import com.trello.rxlifecycle4.android.ActivityEvent;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Arrays;
|
||||
|
||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
|
||||
import io.reactivex.rxjava3.annotations.NonNull;
|
||||
@@ -47,7 +46,7 @@ public class MainViewModel extends BaseViewModel<ActivityMainBinding, ActivityEv
|
||||
Log.e("patchAPK", "mAppUpdateManager: Package: " + packageName + ", Path: " + apkPath);
|
||||
File file = new File("/sdcard");
|
||||
long time = System.currentTimeMillis();
|
||||
emitter.onNext(NativeUtil.patchAPK(apkPath, "/sdcard/mir4_update.xapk", "/sdcard/mir4.patch"));
|
||||
emitter.onNext(NativeUtil.patchApk(apkPath, "/sdcard/mir4_update.xapk", "/sdcard/mir4.patch"));
|
||||
Log.e(TAG, "subscribe: " + (System.currentTimeMillis() - time) + "ms");
|
||||
emitter.onComplete();
|
||||
}
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
package com.example.mir4updater.utils;
|
||||
|
||||
public class NativeUtil {
|
||||
static {
|
||||
System.loadLibrary("ttutils");
|
||||
}
|
||||
|
||||
/**
|
||||
* 合并APK文件
|
||||
* @param oldApkFile 旧APK文件路径
|
||||
* @param newApkFile 新APK文件路径(存储生成的APK的路径)
|
||||
* @param patchFile 差异文件
|
||||
*/
|
||||
public native static int patchAPK(String oldApkFile,String newApkFile,String patchFile);
|
||||
}
|
||||
Reference in New Issue
Block a user