1

当我的应用程序通过下载的 APK 和 PackageInstaller 进行自我更新时,即使我实现了一个实际上被调用的 BroadcastReceiver,它也不会重新启动。该应用程序只是关闭并保持关闭状态。

我的广播接收器:

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.util.Log;


public class LauncherReceiver extends BroadcastReceiver
{
    @Override public void onReceive(Context context, Intent intent)
    {
        Log.e("LauncherReceiver", "Received");
        Log.e("LauncherReceiver", context.getPackageManager().getLaunchIntentForPackage(context.getPackageName()).toString());

        Intent startIntent = context.getPackageManager().getLaunchIntentForPackage(context.getPackageName());
        startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        context.startActivity(startIntent);

        Log.e("LauncherReceiver", "Intent started");
    }
}

我收到所有这三条消息,但应用程序不会重新启动。包管理器返回正确的启动活动。没有错误,没有重启。

谁能帮帮我?谢谢。

4

1 回答 1

0

您必须onNewIntent()在更新后调用应该启动的活动,并在清单中声明接收者。你实现了吗?

于 2020-07-08T08:15:43.557 回答