直播平台制作,Android 悬浮窗延时5秒返回APP问题
案例需求分析:在APP界面,点击Home键后,APP退出后台,同时会打开一个悬浮窗,当用户点击悬浮窗上的按键会返回APP。
出现的问题是:点击悬浮窗上的按键没有立即返回APP,而是需要延时一段时间才会启动。
解决方案就是:如果需要在手机桌面页面点击悬浮窗上的按键快速返APP内部,就需要给 APP 添加上 APP加上
android.Manifest.permission.STOP_APP_SWITCHES 权限。
AndroidManifest.xml 清单文件中添加如下权限:
<uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
Android.mk 文件添加如下:
LOCAL_CERTIFICATE := platform
在谷歌的 Android API Guides 中,特意提醒开发者不要在后台启动 activity,包括在 Service 和 BroadcastReceiver 中,这样的设计是为了避免在用户毫不知情的情况下突然中断用户正在进行的工作。
http://developer.android.com/guide/practices/seamlessness.html#interrupt
优雅的解决方式就是 将intent用PendingIntent包裹:
Intent intent = new Intent(applicationContext, PlayActivity.class);
intent.putExtra(InteractionFmMainActivity.INFO_ID_KEY, PlayActivity.sParamsIdKey);
intent.putExtra(InteractionFmMainActivity.INFO_TYPE_KEY,PlayActivity.sParamsInfoTypeKey);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
try {
PendingIntent pendingIntent = PendingIntent.getActivity(ApplicationGlobal.getGlobalContext(), 0, intent, 0);
pendingIntent.send();
} catch (Exception e) {
e.printStackTrace();
}
以上就是 直播平台制作,Android 悬浮窗延时5秒返回APP问题,更多内容欢迎关注之后的文章
标签:悬浮,APP,Intent,延时,intent,Android From: https://www.cnblogs.com/yunbaomengnan/p/17168001.html