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 ks = extras.keySet(); //// Iterator 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 + "安装成功"); // } // } }