version:1.2.1

fix:
update:安装应用后删除文件
This commit is contained in:
2023-04-10 14:50:00 +08:00
parent 32bad14c13
commit 2196527c25
4 changed files with 83 additions and 5 deletions

View File

@@ -18,8 +18,8 @@ android {
minSdkVersion 26
targetSdkVersion 29
versionCode 10
versionName "1.1.8"
versionCode 13
versionName "1.2.1"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"

View File

@@ -58,11 +58,13 @@
<activity android:name="com.uiui.zyappstore.activity.ManagerAppActivity" />
<activity
android:name="com.uiui.zyappstore.activity.MainActivity"
android:configChanges="keyboardHidden|screenSize">
android:configChanges="keyboardHidden|screenSize"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<!-- <action android:name="android.intent.action.MAIN" />-->
<category android:name="android.intent.category.LAUNCHER" />
<!-- <category android:name="android.intent.category.LAUNCHER" />-->
</intent-filter>
</activity>
<activity

View File

@@ -7,6 +7,7 @@ import android.content.Intent;
import android.text.TextUtils;
import android.util.Log;
import com.uiui.zyappstore.utils.ApkUtils;
import com.uiui.zyappstore.utils.JGYUtils;
import java.util.concurrent.TimeUnit;
@@ -52,6 +53,7 @@ public class NewAppReceiver extends BroadcastReceiver {
break;
}
Log.e(TAG, "sendAppInfo: " + state + packageName);
ApkUtils.RemoveTask(mContext, packageName);
if ("com.uiui.sn".equals(packageName)) {
JGYUtils.getInstance().wakeUpDeviceInfo();
} else if ("com.uiuios.updatetools".equals(packageName)) {

View File

@@ -13,6 +13,7 @@ import android.net.Uri;
import android.os.Binder;
import android.os.Build;
import android.provider.Settings;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Toast;
@@ -20,9 +21,13 @@ import android.widget.Toast;
import androidx.annotation.RequiresApi;
import androidx.core.content.FileProvider;
import com.arialyy.aria.core.Aria;
import com.arialyy.aria.core.download.DownloadEntity;
import com.google.gson.JsonObject;
import com.uiui.zyappstore.BuildConfig;
import com.uiui.zyappstore.R;
import com.uiui.zyappstore.bean.LocalApp;
import com.uiui.zyappstore.gson.GsonUtils;
import com.uiui.zyappstore.receiver.InstallResultReceiver;
import java.io.BufferedReader;
@@ -42,6 +47,14 @@ import java.util.Set;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers;
import io.reactivex.rxjava3.core.Observable;
import io.reactivex.rxjava3.core.ObservableEmitter;
import io.reactivex.rxjava3.core.ObservableOnSubscribe;
import io.reactivex.rxjava3.core.Observer;
import io.reactivex.rxjava3.disposables.Disposable;
import io.reactivex.rxjava3.schedulers.Schedulers;
public class ApkUtils {
private static final String TAG = ApkUtils.class.getSimpleName();
@@ -831,4 +844,65 @@ public class ApkUtils {
this.add("com.uiui.zysn");
this.add("com.uiui.calendar");
}};
public static void RemoveTask(final Context context, final String packageName) {
if (TextUtils.isEmpty(packageName)) {
return;
}
Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> e) throws Exception {
List<DownloadEntity> list = Aria.download(context).getTaskList();
if (list == null || list.size() == 0) {
e.onComplete();
return;
}
for (DownloadEntity entity : list) {
long id = entity.getId();
String extendField = Aria.download(this).load(id).getExtendField();
JsonObject jsonObject = GsonUtils.getJsonObject(extendField);
if (jsonObject.get("app_package") == null) {
continue;
}
String app_package = jsonObject.get("app_package").getAsString();
if (packageName.equals(app_package)) {
Log.e("RemoveTask", "subscribe: " + "删除文件:" + entity.getFilePath());
File file = new File(entity.getFilePath());
file.delete();
try {
Aria.download(this).load(id).cancel(true);
} catch (Exception e1) {
Log.e("RemoveTask", "subscribe: " + e1.getMessage());
}
} else {
Log.e("RemoveTask", "subscribe: ");
}
}
e.onComplete();
}
}).subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
Log.e("RemoveTask", "onSubscribe: ");
}
@Override
public void onNext(String s) {
Log.e("RemoveTask", "onNext: ");
}
@Override
public void onError(Throwable e) {
Log.e("RemoveTask", "onError: " + e.getMessage());
}
@Override
public void onComplete() {
Log.e("RemoveTask", "onComplete: ");
}
});
}
}