正在查看: 六分钟步行测试管理软件 v1.1.0.2112120029 应用的 VersionService.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: 六分钟步行测试管理软件 v1.1.0.2112120029 应用的 VersionService.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.allenliu.versionchecklib.v2.ui;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.IBinder;
import com.allenliu.versionchecklib.R;
import com.allenliu.versionchecklib.core.http.AllenHttp;
import com.allenliu.versionchecklib.utils.ALog;
import com.allenliu.versionchecklib.utils.AllenEventBusUtil;
import com.allenliu.versionchecklib.utils.AppUtils;
import com.allenliu.versionchecklib.v2.AllenVersionChecker;
import com.allenliu.versionchecklib.v2.builder.BuilderManager;
import com.allenliu.versionchecklib.v2.builder.DownloadBuilder;
import com.allenliu.versionchecklib.v2.callback.DownloadListenerKt;
import com.allenliu.versionchecklib.v2.eventbus.CommonEvent;
import com.allenliu.versionchecklib.v2.net.DownloadMangerV2;
import java.io.File;
import java.util.concurrent.ExecutorService;
import kotlin.Metadata;
import kotlin.Unit;
import kotlin.jvm.functions.Function1;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
@Metadata(d1 = {"\u0000R\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u000e\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000b\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\b\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0002\b\t\u0018\u0000 '2\u00020\u0001:\u0001'B\u0005¢\u0006\u0002\u0010\u0002J\b\u0010\u000f\u001a\u00020\u0010H\u0002J\b\u0010\u0011\u001a\u00020\u0010H\u0002J\b\u0010\u0012\u001a\u00020\u0010H\u0002J\u0012\u0010\u0013\u001a\u0004\u0018\u00010\u00142\u0006\u0010\u0015\u001a\u00020\u0016H\u0016J\b\u0010\u0017\u001a\u00020\u0010H\u0016J\b\u0010\u0018\u001a\u00020\u0010H\u0002J \u0010\u0019\u001a\u00020\u001a2\u0006\u0010\u0015\u001a\u00020\u00162\u0006\u0010\u001b\u001a\u00020\u001a2\u0006\u0010\u001c\u001a\u00020\u001aH\u0016J\u0014\u0010\u001d\u001a\u00020\u00102\n\u0010\u001e\u001a\u0006\u0012\u0002\b\u00030\u001fH\u0007J\b\u0010 \u001a\u00020\u0010H\u0002J\b\u0010!\u001a\u00020\u0010H\u0002J\b\u0010\"\u001a\u00020\u0010H\u0002J\b\u0010#\u001a\u00020\u0010H\u0002J\b\u0010$\u001a\u00020\u0010H\u0003J\u0010\u0010%\u001a\u00020\u00102\u0006\u0010&\u001a\u00020\u001aH\u0002R\u0014\u0010\u0003\u001a\u00020\u00048BX\u0082\u0004¢\u0006\u0006\u001a\u0004\b\u0005\u0010\u0006R\u000e\u0010\u0007\u001a\u00020\bX\u0082\u0004¢\u0006\u0002\n\u0000R\u0010\u0010\t\u001a\u0004\u0018\u00010\nX\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\u000b\u001a\u00020\fX\u0082\u000e¢\u0006\u0002\n\u0000R\u0010\u0010\r\u001a\u0004\u0018\u00010\u000eX\u0082\u000e¢\u0006\u0002\n\u0000¨\u0006("}, d2 = {"Lcom/allenliu/versionchecklib/v2/ui/VersionService;", "Landroid/app/Service;", "()V", "downloadFilePath", "", "getDownloadFilePath", "()Ljava/lang/String;", "downloadListener", "Lcom/allenliu/versionchecklib/v2/callback/DownloadListenerKt;", "executors", "Ljava/util/concurrent/ExecutorService;", "isServiceAlive", "", "notificationHelper", "Lcom/allenliu/versionchecklib/v2/ui/NotificationHelper;", "downloadAPK", "", "init", "install", "onBind", "Landroid/os/IBinder;", "intent", "Landroid/content/Intent;", "onDestroy", "onHandleWork", "onStartCommand", "", "flags", "startId", "receiveEvent", "commonEvent", "Lcom/allenliu/versionchecklib/v2/eventbus/CommonEvent;", "requestPermissionAndDownload", "showDownloadFailedDialog", "showDownloadingDialog", "showVersionDialog", "startDownloadApk", "updateDownloadingDialogProgress", "progress", "Companion", "library_release"}, k = 1, mv = {1, 8, 0}, xi = 48)
public final class VersionService extends Service {
public static final Companion INSTANCE = new Companion(null);
private final DownloadListenerKt downloadListener = new DownloadListenerKt() {
@Override
public boolean isDisposed() {
return DownloadListenerKt.DefaultImpls.isDisposed(this);
}
@Override
public void onCheckerDownloading(final int progress) {
BuilderManager builderManager = BuilderManager.INSTANCE;
final VersionService versionService = VersionService.this;
BuilderManager.doWhenNotNull$default(builderManager, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder r4) {
throw new UnsupportedOperationException("Method not decompiled: com.allenliu.versionchecklib.v2.ui.VersionService$downloadListener$1$onCheckerDownloading$1.invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder):void");
}
}, 1, null);
}
@Override
public void onCheckerDownloadSuccess(final File file) {
Intrinsics.checkNotNullParameter(file, "file");
BuilderManager builderManager = BuilderManager.INSTANCE;
final VersionService versionService = VersionService.this;
BuilderManager.doWhenNotNull$default(builderManager, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder r3) {
throw new UnsupportedOperationException("Method not decompiled: com.allenliu.versionchecklib.v2.ui.VersionService$downloadListener$1$onCheckerDownloadSuccess$1.invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder):void");
}
}, 1, null);
}
@Override
public void onCheckerDownloadFail() {
BuilderManager builderManager = BuilderManager.INSTANCE;
final VersionService versionService = VersionService.this;
BuilderManager.doWhenNotNull$default(builderManager, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder r2) {
throw new UnsupportedOperationException("Method not decompiled: com.allenliu.versionchecklib.v2.ui.VersionService$downloadListener$1$onCheckerDownloadFail$1.invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder):void");
}
}, 1, null);
}
@Override
public void onCheckerStartDownload() {
BuilderManager builderManager = BuilderManager.INSTANCE;
final VersionService versionService = VersionService.this;
BuilderManager.doWhenNotNull$default(builderManager, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder r2) {
throw new UnsupportedOperationException("Method not decompiled: com.allenliu.versionchecklib.v2.ui.VersionService$downloadListener$1$onCheckerStartDownload$1.invoke(com.allenliu.versionchecklib.v2.builder.DownloadBuilder):void");
}
}, 1, null);
}
};
private ExecutorService executors;
private boolean isServiceAlive;
private NotificationHelper notificationHelper;
@Override
public IBinder onBind(Intent intent) {
Intrinsics.checkNotNullParameter(intent, "intent");
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Intrinsics.checkNotNullParameter(intent, "intent");
if (!EventBus.getDefault().isRegistered(this)) {
EventBus.getDefault().register(this);
}
ALog.e("version service create");
init();
return 3;
}
@Metadata(d1 = {"\u0000\u001e\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\b\u0086\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002J\u0016\u0010\u0003\u001a\u00020\u00042\u0006\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0007\u001a\u00020\b¨\u0006\t"}, d2 = {"Lcom/allenliu/versionchecklib/v2/ui/VersionService$Companion;", "", "()V", "enqueueWork", "", "context", "Landroid/content/Context;", "builder", "Lcom/allenliu/versionchecklib/v2/builder/DownloadBuilder;", "library_release"}, k = 1, mv = {1, 8, 0}, xi = 48)
public static final class Companion {
public Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
private Companion() {
}
public final void enqueueWork(Context context, DownloadBuilder builder) {
Intrinsics.checkNotNullParameter(context, "context");
Intrinsics.checkNotNullParameter(builder, "builder");
BuilderManager.INSTANCE.init(context, builder);
Intent intent = new Intent(context, (Class<?>) VersionService.class);
if (builder.isRunOnForegroundService() && Build.VERSION.SDK_INT >= 26) {
context.startForegroundService(intent);
} else {
context.startService(intent);
}
}
}
@Override
public void onDestroy() {
super.onDestroy();
ALog.e("version service destroy");
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
if (downloadBuilder.isRunOnForegroundService()) {
VersionService.this.stopForeground(true);
}
}
}, 1, null);
BuilderManager.INSTANCE.destroy();
NotificationHelper notificationHelper = this.notificationHelper;
if (notificationHelper != null) {
notificationHelper.onDestroy();
}
this.isServiceAlive = false;
ExecutorService executorService = this.executors;
if (executorService != null) {
executorService.shutdown();
}
AllenHttp.getHttpClient().dispatcher().cancelAll();
if (EventBus.getDefault().isRegistered(this)) {
EventBus.getDefault().unregister(this);
}
}
public final void onHandleWork() {
downloadAPK();
}
private final void downloadAPK() {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
if (downloadBuilder.getVersionBundle() != null) {
if (downloadBuilder.isDirectDownload()) {
VersionService.this.startDownloadApk();
} else if (downloadBuilder.isSilentDownload()) {
VersionService.this.startDownloadApk();
} else {
VersionService.this.showVersionDialog();
}
}
}
}, 1, null);
}
public final void showVersionDialog() {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
Intent intent = new Intent(VersionService.this, (Class<?>) UIActivity.class);
intent.addFlags(268435456);
VersionService.this.startActivity(intent);
}
}, 1, null);
}
public final void showDownloadingDialog() {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
if (downloadBuilder.isShowDownloadingDialog()) {
Intent intent = new Intent(VersionService.this, (Class<?>) DownloadingActivity.class);
intent.addFlags(268435456);
VersionService.this.startActivity(intent);
}
}
}, 1, null);
}
public final void updateDownloadingDialogProgress(int progress) {
CommonEvent commonEvent = new CommonEvent();
commonEvent.setEventType(100);
commonEvent.setData(Integer.valueOf(progress));
commonEvent.setSuccessful(true);
EventBus.getDefault().post(commonEvent);
}
public final void showDownloadFailedDialog() {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
Intent intent = new Intent(VersionService.this, (Class<?>) DownloadFailedActivity.class);
intent.addFlags(268435456);
VersionService.this.startActivity(intent);
}
}, 1, null);
}
private final void requestPermissionAndDownload() {
startDownloadApk();
}
public final void install() {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
String downloadFilePath;
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
AllenEventBusUtil.sendEventBus(101);
downloadFilePath = VersionService.this.getDownloadFilePath();
if (downloadBuilder.isSilentDownload()) {
VersionService.this.showVersionDialog();
} else {
AppUtils.installApk(VersionService.this.getApplicationContext(), new File(downloadFilePath), downloadBuilder.getCustomInstallListener());
BuilderManager.INSTANCE.checkForceUpdate();
}
}
}, 1, null);
}
public final String getDownloadFilePath() {
String str = (String) BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, String>() {
{
super(1);
}
public final String invoke(DownloadBuilder downloadBuilder) {
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
String downloadAPKPath = downloadBuilder.getDownloadAPKPath();
VersionService versionService = VersionService.this;
int i = R.string.versionchecklib_download_apkname;
Object[] objArr = new Object[1];
objArr[0] = downloadBuilder.getApkName() != null ? downloadBuilder.getApkName() : VersionService.this.getPackageName();
return downloadAPKPath + versionService.getString(i, objArr);
}
}, 1, null);
return str == null ? "" : str;
}
private static final void startDownloadApk$inner(final VersionService versionService) {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new Function1<DownloadBuilder, Unit>() {
{
super(1);
}
public Object invoke(Object obj) {
invoke((DownloadBuilder) obj);
return Unit.INSTANCE;
}
public final void invoke(DownloadBuilder downloadBuilder) {
String downloadFilePath;
DownloadListenerKt downloadListenerKt;
Intrinsics.checkNotNullParameter(downloadBuilder, "$this$doWhenNotNull");
downloadFilePath = VersionService.this.getDownloadFilePath();
if (AppUtils.checkAPKIsExists(VersionService.this.getApplicationContext(), downloadFilePath, downloadBuilder.getNewestVersionCode()) && !downloadBuilder.isForceRedownload()) {
ALog.e("using cache");
VersionService.this.install();
return;
}
BuilderManager.INSTANCE.checkAndDeleteAPK();
String downloadUrl = downloadBuilder.getDownloadUrl();
if (downloadUrl == null && downloadBuilder.getVersionBundle() != null) {
downloadUrl = downloadBuilder.getVersionBundle().getDownloadUrl();
}
if (downloadUrl == null) {
AllenVersionChecker.getInstance().cancelAllMission();
throw new RuntimeException("you must set a download url for download function using");
}
ALog.e("downloadPath:" + downloadFilePath);
String downloadAPKPath = downloadBuilder.getDownloadAPKPath();
VersionService versionService2 = VersionService.this;
int i = R.string.versionchecklib_download_apkname;
Object[] objArr = new Object[1];
objArr[0] = downloadBuilder.getApkName() != null ? downloadBuilder.getApkName() : VersionService.this.getPackageName();
String string = versionService2.getString(i, objArr);
downloadListenerKt = VersionService.this.downloadListener;
DownloadMangerV2.download(downloadUrl, downloadAPKPath, string, downloadListenerKt);
}
}, 1, null);
}
public final void startDownloadApk() {
ExecutorService executorService = this.executors;
if (executorService != null) {
executorService.submit(new Runnable() {
@Override
public final void run() {
VersionService.startDownloadApk$lambda$0(VersionService.this);
}
});
}
}
public static final void startDownloadApk$lambda$0(VersionService versionService) {
Intrinsics.checkNotNullParameter(versionService, "this$0");
startDownloadApk$inner(versionService);
}
@Subscribe(threadMode = ThreadMode.MAIN)
public final void receiveEvent(CommonEvent<?> commonEvent) {
Intrinsics.checkNotNullParameter(commonEvent, "commonEvent");
int eventType = commonEvent.getEventType();
if (eventType == 98) {
startDownloadApk();
} else {
if (eventType != 103) {
return;
}
stopSelf();
EventBus.getDefault().removeStickyEvent(commonEvent);
}
}
private final void init() {
BuilderManager.doWhenNotNull$default(BuilderManager.INSTANCE, null, new VersionService$init$1(this), 1, null);
}
}