Android华为平行视界/小米横屏模式适配(左右分屏)

近期项目上提了一个需求,要在平板横屏状态下分屏显示内容,且分屏界面为同一应用界面。在查阅了大量文档后,确认这是华为实现的一种分屏方案叫做平行视界。

       平行视界,是华为首创的应用内分屏功能,已经在华为平板M6与华为MatePad Pro上发布。和安卓系统分屏提供是两个应用间的分屏不同的是,它提供应用内两个窗口可以在屏幕上左右同时显示的功能,从而使安卓平板的使用体验有了革命性突破。

平行视界的核心技术主要分为:双窗口分离显示技术、双窗口生命周期管理、双窗口显示模式。

由于只有一台小米平板做为测试设备,开始还在担心如何测试,后来发现按照华为平行视界的适配方案在小米设备一样生效。推测厂商在这方面的实现无差异。

一,AndroidManifest.xml

application节点内添加即可

<meta-data
            android:name="EasyGoClient"
            android:value="true"/>
<meta-data
            android:name="android.allow_multiple_resumed_activities"
            android:value="true"/>

二,easygo.json

工程目录下新增配置文件

 此文件内容非常重要,由于网上说明文档非常少,在多次实验验证后得到以下配置内容,可实现横屏进入主界面,跳转新界面时分屏显示。

{
  "easyGoVersion": "1.0",
  "client": "com.test.AndroidBeta",
  "logicEntities": [
    {
      "head": {
        "function": "magicwindow",
        "required": "true"
      },
      "body": {
        "mode": "1",
        "activityPairs": [
          {
            "from": "com.test.Android.AndroidActivity",
            "to": "*"
          }
        ],
        "Activities": [
          {
            "name": "com.test.Android.AndroidActivity",
            "defaultFullScreen": "false"
          },
          {
            "name": "com.test.Android.SecondActivity",
            "defaultFullScreen": "false"
          }
        ],
        "UX": {
          "supportRotationUxCompat": "true",
          "isDraggable": "true",
          "supportDraggingToFullScreen": "PAD"
        }
      }
    }
  ]
}

判断当前处于平行视界

/**
     * 判断是否处于平行视界
     * @return true/false
     */
    protected boolean isInMagicWindow(){
        String config = this.getResources().getConfiguration().toString();
        return config.contains("hwMultiwindow-magic") || config.contains("miui-magic-windows");
    }

更正一下判断平行视界的方式,早期判断小米平板是可以的,后来小米应该是换了方案,华为的那套不行了。现在这个适配方案只适用于华为设备。

public boolean isInMagicWindow(){
        String config = mContext.getResources().getConfiguration().toString();
        return config.contains("hw-magic-windows");
    }

华为官方文档:文档中心

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汤面不加鱼丸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值