70 lines
2.8 KiB
Java
70 lines
2.8 KiB
Java
package com.example.mir4updater.receiver;
|
|
|
|
import android.content.BroadcastReceiver;
|
|
import android.content.Context;
|
|
import android.content.Intent;
|
|
import android.content.pm.PackageInstaller;
|
|
import android.content.pm.PackageManager;
|
|
import android.os.Build;
|
|
import android.util.Log;
|
|
|
|
import androidx.annotation.RequiresApi;
|
|
|
|
import com.hjq.toast.Toaster;
|
|
|
|
public class InstallResultReceiver extends BroadcastReceiver {
|
|
private static final String TAG = "InstallResultReceiver";
|
|
|
|
@Override
|
|
public void onReceive(Context context, Intent intent) {
|
|
int status = intent.getIntExtra(PackageInstaller.EXTRA_STATUS, -1);
|
|
if (status == PackageInstaller.STATUS_SUCCESS) {
|
|
Log.d(TAG, "XAPK 安装成功");
|
|
} else {
|
|
String errorMsg = intent.getStringExtra(PackageInstaller.EXTRA_STATUS_MESSAGE);
|
|
Log.e(TAG, "安装失败: " + errorMsg);
|
|
}
|
|
}
|
|
|
|
// @RequiresApi(api = Build.VERSION_CODES.LOLLIPOP)
|
|
// @Override
|
|
// public void onReceive(Context context, Intent intent) {
|
|
// if (intent != null) {
|
|
// int status = intent.getIntExtra(PackageInstaller.EXTRA_STATUS, PackageInstaller.STATUS_FAILURE);
|
|
// Log.e(TAG, "onReceive: " + status);
|
|
// if (status == PackageInstaller.STATUS_SUCCESS) {
|
|
// // success
|
|
// String PACKAGE_NAME = intent.getStringExtra(PackageInstaller.EXTRA_PACKAGE_NAME);
|
|
//
|
|
// Log.e(TAG, "APP Install Success!");
|
|
// } else {
|
|
// String msg = intent.getStringExtra(PackageInstaller.EXTRA_STATUS_MESSAGE);
|
|
// Log.e(TAG, "onReceive: " + msg);
|
|
// }
|
|
// }
|
|
//// String s = intent.getAction();
|
|
//// Log.e(TAG, s);
|
|
//// Bundle extras = intent.getExtras();
|
|
//// Set<String> ks = extras.keySet();
|
|
//// Iterator<String> iterator = ks.iterator();
|
|
//// while (iterator.hasNext()) {
|
|
//// Log.d("KEY", iterator.next());
|
|
//// }
|
|
// String STATUS = intent.getStringExtra(PackageInstaller.EXTRA_STATUS);
|
|
// String PACKAGE_NAME = intent.getStringExtra(PackageInstaller.EXTRA_PACKAGE_NAME);
|
|
// String SESSION_ID = intent.getStringExtra(PackageInstaller.EXTRA_SESSION_ID);
|
|
// String STATUS_MESSAGE = intent.getStringExtra(PackageInstaller.EXTRA_STATUS_MESSAGE);
|
|
// String LEGACY_STATUS = intent.getStringExtra("android.content.pm.extra.LEGACY_STATUS");
|
|
//
|
|
// Log.e(TAG, "EXTRA_STATUS: " + STATUS);
|
|
// Log.e(TAG, "PACKAGE_NAME: " + PACKAGE_NAME);
|
|
// Log.e(TAG, "SESSION_ID: " + SESSION_ID);
|
|
// Log.e(TAG, "STATUS_MESSAGE: " + LEGACY_STATUS);
|
|
// Log.e(TAG, "LEGACY_STATUS: " + STATUS_MESSAGE);
|
|
//
|
|
// if ("INSTALL_SUCCEEDED".equals(STATUS_MESSAGE)) {
|
|
// Toaster.show(PACKAGE_NAME + "安装成功");
|
|
// }
|
|
// }
|
|
}
|