Android【后台启动界面】问题 解决方案

banner传送门      圆形进度条  相机取景框

需求:当android 手机 按了 home 键后  接到语音通话 需要 弹出 语音接听界面。

业务分析:当app 处于 后台状态下(按home键)接到socket 消息或者推送消息   然后 直接从后台 弹出界面。

最终效果:很多 新版(Android Q)、小米等手机 弹出不相关界面。测试和产品 组 要求修复。

经过探索发现 大部分手机 需要开启【悬浮窗权限】  小米等部分手机 需要开启【后台弹出界面】权限  

于是 就手写了一个 demo :希望有需要的同学 可以试试:

集成方式:项目 目录 build.gradle

  repositories {
        google()
        jcenter()
        
    }

项目build.gradle

dependencies {
	      implementation 'org.zhx.common:bgStart:1.0.0'
	}

非Androidx 项目 在gradle.properties 添加:

android.useAndroidX=true
android.enableJetifier=true

代码如下:

第一步:使用前 请先申请权限 

 BgStart bgStart = new IBgStartImpl();
        Log.e("RAG", Miui.isAllowed(this)+"");
        bgStart.requestStartPermisstion(this, new PermissionLisenter() {
            @Override
            public void onGranted() {
                Log.e(TAG, "onGranted");
            }

            @Override
            public void cancel() {
                Log.e(TAG, "cancel");
            }

            @Override
            public void onDenied() {
                Log.e(TAG, "onDenied");
            }
        });

第二步:启动界面 从MainActivity  跳转到B  (activity)

  Intent intent = new Intent(MainActivity.this, B.class);
                new IBgStartImpl().startActivity(MainActivity.this, intent, B.class.getName());

DEMO  持续更新 欢迎交流

发布了16 篇原创文章 · 获赞 5 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/u013783167/article/details/105721212