version:huaruian 1.1.1

fix:修复自动升级后不下载桌面和其他更新
update:增加bugly
This commit is contained in:
2023-08-31 17:13:08 +08:00
parent 03901123da
commit 51a125ce3f
18 changed files with 496 additions and 145 deletions

View File

@@ -23,8 +23,17 @@ import com.aoleyun.sn.utils.Utils;
import com.aoleyun.sn.utils.WiFiUtils;
import com.aoleyun.sn.utils.XAPKUtils;
import com.arialyy.aria.core.Aria;
import com.tencent.bugly.crashreport.CrashReport;
import com.tencent.mmkv.MMKV;
import java.util.concurrent.TimeUnit;
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;
public class BaseApplication extends MultiDexApplication {
private static final String TAG = BaseApplication.class.getSimpleName();
@@ -45,7 +54,13 @@ public class BaseApplication extends MultiDexApplication {
String rootDir = MMKV.initialize(this);
Log.e(TAG, "mmkv root: " + rootDir);
CrashReport.initCrashReport(getApplicationContext(), "b16b3c7f1a", false);
CrashReport.setDeviceModel(this, Utils.getSerial(this));
PushManager.init(this);
initRegisterObservable();
initAliasObservable();
initTagObservable();
aliyunPushInit();
ToastUtil.init(this);
@@ -91,6 +106,52 @@ public class BaseApplication extends MultiDexApplication {
});
}
interface OnRegisterResult {
void onResult(String code);
}
private static OnRegisterResult mOnRegisterResult;
private void initRegisterObservable() {
Log.e(TAG, "initTagObservable: ");
Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> emitter) {
mOnRegisterResult = new OnRegisterResult() {
@Override
public void onResult(String code) {
Log.e("initRegisterObservable", "onResult: " + code);
emitter.onNext(code);
}
};
}
}).throttleLast(60, TimeUnit.SECONDS)
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(String code) {
Log.e("initRegisterObservable", "onNext: " + code);
Log.e("initRegisterObservable", "onNext: 重新注册aliyunPush");
aliyunPushInit();
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});
}
private void aliyunPushInit() {
PushServiceFactory.init(this);
final CloudPushService pushService = PushServiceFactory.getCloudPushService();
@@ -106,17 +167,60 @@ public class BaseApplication extends MultiDexApplication {
@Override
public void onFailed(String errorCode, String errorMessage) {
Log.e("AliyunPush", "init cloudchannel failed -- errorcode:" + errorCode + " -- errorMessage:" + errorMessage);
Handler.getMain().postDelayed(new Runnable() {
@Override
public void run() {
Log.e("AliyunPush", "retry register");
aliyunPushInit();
}
}, 30000);
mOnRegisterResult.onResult(errorCode);
}
});
}
interface OnAliasResult {
void onResult(String code);
}
private static OnAliasResult mOnAliasResult;
private void initAliasObservable() {
Log.e(TAG, "initAliasObservable: ");
Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> emitter) throws Exception {
mOnAliasResult = new OnAliasResult() {
@Override
public void onResult(String code) {
Log.e("initAliasObservable", "onResult: " + code);
emitter.onNext(code);
}
};
}
}).throttleLast(60, TimeUnit.SECONDS)
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(String code) {
Log.e("initAliasObservable", "onNext: " + code);
switch (code){
case "PUSH_20101":
aliyunPushInit();
default:
setAlias();
}
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});
}
private void setAlias() {
final CloudPushService pushService = PushServiceFactory.getCloudPushService();
String sn = Utils.getSerial(BaseApplication.this);
@@ -133,13 +237,7 @@ public class BaseApplication extends MultiDexApplication {
public void onFailed(String errorCode, String errorMsg) {
Log.e("AliyunPush", "bind account " + sn + " failed." +
"errorCode: " + errorCode + ", errorMsg:" + errorMsg);
Handler.getMain().postDelayed(new Runnable() {
@Override
public void run() {
Log.e("AliyunPush", "retry bindAccount");
setAlias();
}
}, 30000);
mOnAliasResult.onResult(errorCode);
}
});
pushService.addAlias(sn, new CommonCallback() {
@@ -152,15 +250,56 @@ public class BaseApplication extends MultiDexApplication {
public void onFailed(String errorCode, String errorMsg) {
Log.e("AliyunPush", "add alias " + sn + " failed." +
"errorCode: " + errorCode + ", errorMsg:" + errorMsg + "\n");
Handler.getMain().postDelayed(new Runnable() {
@Override
public void run() {
Log.e("AliyunPush", "retry addAlias");
setAlias();
}
}, 30000);
mOnAliasResult.onResult(errorCode);
}
});
}
public static void onTagOperatorResult(String code) {
onTagResult.onResult(code);
}
private static OnTagResult onTagResult;
interface OnTagResult {
void onResult(String code);
}
private static void initTagObservable() {
Log.e(TAG, "initTagObservable: ");
Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(ObservableEmitter<String> emitter) {
onTagResult = new OnTagResult() {
@Override
public void onResult(String code) {
Log.e("initTagObservable", "onResult: " + code);
emitter.onNext(code);
}
};
}
}).throttleLast(60, TimeUnit.SECONDS)
.subscribe(new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(String code) {
Log.e("initTagObservable", "onNext: " + code);
NetInterfaceManager.getInstance().setPushTags();
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});
}
}