gpt4 book ai didi

android - 当所有 Activity 都在后台时,从 TileService 或从 View 启动Activity(android)

转载 作者:行者123 更新时间:2023-11-30 04:54:13 28 4
gpt4 key购买 nike

前提条件:

  1. 安卓Q
  2. 我的所有 Activity 都在后台进行

问题1:

我在前台有一个 View ,当用户单击该 View 时,我尝试在 android Q 中启动一个 Activity 。
这是我的代码。

Intent intent = new Intent(context, BorderActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);

这不起作用,也没有发生崩溃。我得到一些日志。

D ActivityTaskManagerServiceInjector: MIUILOG- Permission Denied Activity : Intent ...



问题2:

我有一个 TileService,当用户单击状态栏中的图标时,我尝试启动一个 Activity 。

@TargetApi(Build.VERSION_CODES.N)
public class QuickSettingService extends TileService {
@Override
public void onClick() {
Intent intent = new Intent(this, MyActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivityAndCollapse(intent);
}
}

AndroidManifest

<service
android:name=".service.QuickSettingService"
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
<intent-filter>
<action android:name="android.service.quicksettings.action.QS_TILE" />
</intent-filter>
</service>

我得到同样的错误:

D ActivityTaskManagerServiceInjector: MIUILOG- Permission Denied Activity : Intent ...

如何从后台启动Activity?

最佳答案

最后我发现MIUI rom中有一个特殊的权限。权限:android.permission.START_ACTIVITIES_FROM_BACKGROUND
用户必须在应用设置中启用“在后台运行时显示弹出窗口”。我无法在应用程序运行时请求权限,甚至无法知道用户是否已授予该应用程序的权限。

关于android - 当所有 Activity 都在后台时,从 TileService 或从 View 启动Activity(android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59507822/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com