1.2.0 增加bugly

This commit is contained in:
2026-03-30 10:32:54 +08:00
parent 73892596b1
commit b53e07195f
24 changed files with 493 additions and 257 deletions

View File

@@ -22,8 +22,7 @@ import com.arialyy.aria.core.task.DownloadTask;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.hainaos.vc.R;
import com.hainaos.vc.bean.uiuios.AriaDownloadInfo;
import com.hainaos.vc.utils.LenovoCsdkUtil;
import com.hainaos.vc.bean.CategoryVideoInfo;
import com.hjq.toast.Toaster;
import java.io.File;
@@ -46,9 +45,9 @@ public class DownloadService extends Service {
Aria.download(this).register();
// mNotificationManagerCompat = NotificationManagerCompat.from(this);
mNotificationManagerCompat = NotificationManagerCompat.from(this);
// createNotificationChannel();
// createDownloadNotificationChannel();
createDownloadNotificationChannel();
// sendSimpleNotification();
}
@@ -119,11 +118,11 @@ public class DownloadService extends Service {
}
}
private void sendDownloadRunning(AriaDownloadInfo ariaDownloadInfo, int progress) {
private void sendDownloadRunning(CategoryVideoInfo ariaDownloadInfo, int progress) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANNEL_DOWNLOAD_ID)
.setSmallIcon(R.mipmap.ic_launcher)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher))
.setContentTitle(ariaDownloadInfo.getAppName())
.setContentTitle(ariaDownloadInfo.getName())
.setContentText("下载中:" + progress + "%")
.setAutoCancel(true)
.setShowWhen(true)
@@ -132,24 +131,26 @@ public class DownloadService extends Service {
.setProgress(100, progress, false)
.setPriority(NotificationCompat.PRIORITY_HIGH);
// notificationId is a unique int for each notification that you must define
mNotificationManagerCompat.notify(ariaDownloadInfo.getAppId(), builder.build());
// startForeground(ariaDownloadInfo.getAppId(), builder.build());
// mNotificationManagerCompat.notify(ariaDownloadInfo.getAppId(), builder.build());
startForeground(ariaDownloadInfo.getFile_size(), builder.build());
}
private void sendDownloadComplete(AriaDownloadInfo ariaDownloadInfo, String path) {
private void sendDownloadComplete(CategoryVideoInfo ariaDownloadInfo, String path) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANNEL_DOWNLOAD_ID)
.setSmallIcon(R.mipmap.ic_launcher)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher))
.setContentTitle(ariaDownloadInfo.getAppName())
.setContentTitle(ariaDownloadInfo.getName())
.setContentText("下载完成")
.setAutoCancel(true)
.setShowWhen(true)
.setOngoing(false)
.setOnlyAlertOnce(true)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setContentIntent(createIntent(path));
// .setContentIntent(createIntent(path))
;
// notificationId is a unique int for each notification that you must define
mNotificationManagerCompat.notify(ariaDownloadInfo.getAppId(), builder.build());
// mNotificationManagerCompat.notify(ariaDownloadInfo.getAppId(), builder.build());
startForeground(ariaDownloadInfo.getFile_size(), builder.build());
}
/**
@@ -175,11 +176,11 @@ public class DownloadService extends Service {
return pendingIntent;
}
private void sendDownloadFail(AriaDownloadInfo ariaDownloadInfo) {
private void sendDownloadFail(CategoryVideoInfo ariaDownloadInfo) {
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, CHANNEL_DOWNLOAD_ID)
.setSmallIcon(R.mipmap.ic_launcher)
.setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher))
.setContentTitle(ariaDownloadInfo.getAppName())
.setContentTitle(ariaDownloadInfo.getName())
.setContentText("下载失败")
.setAutoCancel(true)
.setShowWhen(true)
@@ -187,17 +188,18 @@ public class DownloadService extends Service {
.setOnlyAlertOnce(true)
.setPriority(NotificationCompat.PRIORITY_HIGH);
// notificationId is a unique int for each notification that you must define
mNotificationManagerCompat.notify(ariaDownloadInfo.getAppId(), builder.build());
// mNotificationManagerCompat.notify(ariaDownloadInfo.getAppId(), builder.build());
startForeground(ariaDownloadInfo.getFile_size(), builder.build());
}
@Download.onTaskRunning
void running(DownloadTask task) {
String jsonString = task.getExtendField();
Log.e(TAG, "running: " + "正在下载:" + task.getPercent() + "% " + jsonString);
AriaDownloadInfo ariaDownloadInfo = getAriaDownloadInfo(jsonString);
CategoryVideoInfo ariaDownloadInfo = getAriaDownloadInfo(jsonString);
if (ariaDownloadInfo != null) {
Toaster.show("正在下载: " + ariaDownloadInfo.getAppName() + "\t" + task.getPercent() + "%");
// sendDownloadRunning(ariaDownloadInfo, task.getPercent());
Toaster.show("正在下载: " + ariaDownloadInfo.getName() + "\t" + task.getPercent() + "%");
sendDownloadRunning(ariaDownloadInfo, task.getPercent());
}
}
@@ -205,14 +207,14 @@ public class DownloadService extends Service {
void taskComplete(DownloadTask task) {
String path = task.getFilePath();
Log.e(TAG, "taskComplete: " + path);
if (path.endsWith(".apk")) {
LenovoCsdkUtil.getInstance().installPackage(task.getFilePath());
if (path.endsWith(".hnv")) {
// LenovoCsdkUtil.getInstance().installPackage(task.getFilePath());
String jsonString = task.getExtendField();
Log.e(TAG, "taskComplete: " + "下载完成:" + jsonString);
AriaDownloadInfo ariaDownloadInfo = getAriaDownloadInfo(jsonString);
CategoryVideoInfo ariaDownloadInfo = getAriaDownloadInfo(jsonString);
if (ariaDownloadInfo != null) {
Toaster.show("下载完成: " + "\t" + ariaDownloadInfo.getAppName());
// sendDownloadComplete(ariaDownloadInfo, task.getFilePath());
Toaster.show("下载完成: " + "\t" + ariaDownloadInfo.getName());
sendDownloadComplete(ariaDownloadInfo, task.getFilePath());
}
}
}
@@ -222,19 +224,19 @@ public class DownloadService extends Service {
Log.e(TAG, "taskFail: ");
String jsonString = task.getExtendField();
Log.e(TAG, "taskFail: " + "下载失败:" + jsonString);
AriaDownloadInfo ariaDownloadInfo = getAriaDownloadInfo(jsonString);
CategoryVideoInfo ariaDownloadInfo = getAriaDownloadInfo(jsonString);
if (ariaDownloadInfo != null) {
Toaster.show("下载失败: " + "\t" + ariaDownloadInfo.getAppName());
// sendDownloadFail(ariaDownloadInfo);
Toaster.show("下载失败: " + "\t" + ariaDownloadInfo.getName());
sendDownloadFail(ariaDownloadInfo);
}
}
private AriaDownloadInfo getAriaDownloadInfo(String jsonString) {
private CategoryVideoInfo getAriaDownloadInfo(String jsonString) {
if (!TextUtils.isEmpty(jsonString)) {
Gson gson = new Gson();
Type type = new TypeToken<AriaDownloadInfo>() {
Type type = new TypeToken<CategoryVideoInfo>() {
}.getType();
AriaDownloadInfo ariaDownloadInfo = null;
CategoryVideoInfo ariaDownloadInfo = null;
try {
ariaDownloadInfo = gson.fromJson(jsonString, type);
} catch (Exception e) {