翰林优商.apk(点击下载) / DownloadHandlerService.java
package com.ss.android.socialbase.appdownloader;
import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.os.IBinder;
import android.text.TextUtils;
import android.widget.Toast;
import com.ss.android.downloadad.api.constant.AdBaseConstants;
import com.ss.android.socialbase.appdownloader.c.d;
import com.ss.android.socialbase.appdownloader.view.DownloadTaskDeleteActivity;
import com.ss.android.socialbase.downloader.c.a;
import com.ss.android.socialbase.downloader.depend.af;
import com.ss.android.socialbase.downloader.depend.z;
import com.ss.android.socialbase.downloader.downloader.Downloader;
import com.ss.android.socialbase.downloader.downloader.c;
import com.ss.android.socialbase.downloader.i.f;
import com.ss.android.socialbase.downloader.model.DownloadInfo;
import com.ss.android.socialbase.downloader.notification.b;
import java.io.File;
import java.util.ArrayList;
public class DownloadHandlerService extends Service {
private static final String a = "DownloadHandlerService";
public IBinder onBind(Intent intent) {
return null;
}
public void onCreate() {
super.onCreate();
c.a(this);
}
public int onStartCommand(Intent intent, int i, int i2) {
super.onStartCommand(intent, i, i2);
if (a.a()) {
a.b(a, "onStartCommand");
}
a(intent);
stopSelf();
return 2;
}
private boolean a(Intent intent) {
if (intent == null) {
return false;
}
String action = intent.getAction();
if (TextUtils.isEmpty(action)) {
return false;
}
int intExtra = intent.getIntExtra("extra_click_download_ids", 0);
intent.getIntExtra("extra_click_download_type", 0);
d b = d.j().b();
z downloadNotificationEventListener = Downloader.getInstance(this).getDownloadNotificationEventListener(intExtra);
boolean z = true;
if (intent.getBooleanExtra("extra_from_notification", false) && com.ss.android.socialbase.downloader.g.a.a(intExtra).b("notification_opt_2") == 1) {
b.a().f(intExtra);
}
DownloadInfo downloadInfo = Downloader.getInstance(this).getDownloadInfo(intExtra);
if (downloadInfo == null) {
return false;
}
if (action.equals("android.ss.intent.action.DOWNLOAD_CLICK_CONTENT")) {
a(downloadInfo, b, downloadNotificationEventListener);
} else if (action.equals("android.ss.intent.action.DOWNLOAD_OPEN")) {
a(this, downloadInfo, b, downloadNotificationEventListener);
} else if (action.equals("android.ss.intent.action.DOWNLOAD_CLICK_BTN")) {
if (downloadInfo.getStatus() == 0) {
return false;
}
a(this, downloadInfo, b, downloadNotificationEventListener);
if (downloadInfo.isDownloadOverStatus() && com.ss.android.socialbase.downloader.g.a.a(intExtra).a("no_hide_notification", 0) == 0) {
if (com.ss.android.socialbase.downloader.g.a.a(intExtra).b("enable_notification_ui") < 2 || downloadInfo.getStatus() != -1) {
z = false;
}
if (!z) {
b.a().a(intExtra);
b.a().f(intExtra);
}
}
} else if (action.equals("android.ss.intent.action.DOWNLOAD_DELETE")) {
b(downloadInfo, b, downloadNotificationEventListener);
} else if (action.equals("android.ss.intent.action.DOWNLOAD_HIDE")) {
b.a().a(intExtra);
} else if (action.equals("android.intent.action.BOOT_COMPLETED") || action.equals("android.intent.action.MEDIA_MOUNTED")) {
c.l().execute(new Runnable() {
/* class com.ss.android.socialbase.appdownloader.DownloadHandlerService.AnonymousClass1 */
public void run() {
try {
ArrayList arrayList = new ArrayList();
arrayList.add(AdBaseConstants.MIME_APK);
arrayList.add("mime_type_plg");
Downloader.getInstance(c.N()).restartAllFailedDownloadTasks(arrayList);
} catch (Exception e) {
e.printStackTrace();
}
}
});
return true;
}
return false;
}
private static void a(Context context, DownloadInfo downloadInfo) {
if (f.b(context.getApplicationContext()) && downloadInfo.isPauseReserveOnWifi()) {
downloadInfo.stopPauseReserveOnWifi();
}
}
private static void a(Context context, final d dVar, final DownloadInfo downloadInfo) {
if (downloadInfo != null) {
final z downloadNotificationEventListener = Downloader.getInstance(context).getDownloadNotificationEventListener(downloadInfo.getId());
if (dVar != null || downloadNotificationEventListener != null) {
c.l().execute(new Runnable() {
/* class com.ss.android.socialbase.appdownloader.DownloadHandlerService.AnonymousClass2 */
public void run() {
String str;
PackageInfo a2;
try {
File file = new File(downloadInfo.getSavePath(), downloadInfo.getName());
if (file.exists()) {
try {
if (c.N() == null || (a2 = c.a(downloadInfo, file)) == null) {
str = "";
} else {
str = a2.packageName;
}
d dVar = dVar;
if (dVar != null) {
dVar.a(downloadInfo.getId(), 3, str, -3, downloadInfo.getDownloadTime());
}
z zVar = downloadNotificationEventListener;
if (zVar != null) {
zVar.a(3, downloadInfo, str, "");
}
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
});
}
}
}
/* JADX WARNING: Removed duplicated region for block: B:14:? A[RETURN, SYNTHETIC] */
/* JADX WARNING: Removed duplicated region for block: B:8:0x001a */
private void a(DownloadInfo downloadInfo, d dVar, z zVar) {
boolean z;
int id = downloadInfo.getId();
af m = com.ss.android.socialbase.downloader.downloader.d.a().m(id);
if (m != null) {
try {
z = m.a(downloadInfo);
} catch (Throwable th) {
th.printStackTrace();
}
if (z) {
Intent intent = new Intent(this, DownloadTaskDeleteActivity.class);
intent.putExtra("extra_click_download_ids", id);
intent.addFlags(268435456);
startActivity(intent);
b.a().a(id);
downloadInfo.updateDownloadTime();
if (dVar != null) {
dVar.a(id, 7, "", downloadInfo.getStatus(), downloadInfo.getDownloadTime());
}
if (zVar != null) {
zVar.a(7, downloadInfo, "", "");
return;
}
return;
}
return;
}
z = false;
if (z) {
}
}
private void b(DownloadInfo downloadInfo, d dVar, z zVar) {
int id = downloadInfo.getId();
Intent intent = new Intent(this, DownloadTaskDeleteActivity.class);
intent.putExtra("extra_click_download_ids", id);
intent.addFlags(268435456);
startActivity(intent);
b.a().a(id);
downloadInfo.updateDownloadTime();
if (dVar != null) {
dVar.a(id, 7, "", downloadInfo.getStatus(), downloadInfo.getDownloadTime());
}
if (zVar != null) {
zVar.a(7, downloadInfo, "", "");
}
}
private static void a(Context context, int i, boolean z) {
boolean z2;
af m;
if (z && (m = com.ss.android.socialbase.downloader.downloader.d.a().m(i)) != null) {
try {
DownloadInfo downloadInfo = Downloader.getInstance(context).getDownloadInfo(i);
if (downloadInfo != null) {
z2 = m.b(downloadInfo);
if (!z2 && c.a(context, i, true) == 0) {
Toast.makeText(context, "Open Fail!", 0).show();
}
return;
}
} catch (Throwable th) {
th.printStackTrace();
}
}
z2 = false;
if (!z2) {
Toast.makeText(context, "Open Fail!", 0).show();
}
}
public static void a(Context context, DownloadInfo downloadInfo, d dVar, z zVar) {
com.ss.android.socialbase.downloader.notification.a e;
int id = downloadInfo.getId();
af m = com.ss.android.socialbase.downloader.downloader.d.a().m(id);
if (!AdBaseConstants.MIME_APK.equals(downloadInfo.getMimeType()) || m == null || !c.a(context, downloadInfo) || !m.c(downloadInfo)) {
boolean z = false;
switch (downloadInfo.getStatus()) {
case -4:
case -1:
if (com.ss.android.socialbase.downloader.g.a.a(id).b("enable_notification_ui") >= 2 && downloadInfo.isOnlyWifi()) {
downloadInfo.setOnlyWifi(false);
}
Downloader.getInstance(context).restart(id);
return;
case -3:
a(c.N(), id, true);
a(context, dVar, downloadInfo);
if (com.ss.android.socialbase.downloader.g.a.a(id).a("notification_click_install_auto_cancel", 1) != 0 || (e = b.a().e(id)) == null) {
z = true;
} else {
e.g();
e.a(-3, null, false, true);
}
if (z) {
b.a().a(id);
return;
}
return;
case -2:
if (com.ss.android.socialbase.downloader.downloader.d.a().e(id)) {
Downloader.getInstance(context).resume(id);
} else {
c.a(downloadInfo, true, false);
}
if (dVar != null) {
dVar.a(id, 6, "", downloadInfo.getStatus(), downloadInfo.getDownloadTime());
}
if (zVar != null) {
zVar.a(6, downloadInfo, "", "");
return;
}
return;
case 0:
default:
return;
case 1:
case 2:
case 3:
case 4:
case 5:
Downloader.getInstance(context).pause(id);
a(context, downloadInfo);
if (dVar != null) {
dVar.a(id, 5, "", downloadInfo.getStatus(), downloadInfo.getDownloadTime());
}
if (zVar != null) {
zVar.a(5, downloadInfo, "", "");
return;
}
return;
}
}
}
}