mPaas-H5容器 如何将阿里特定H5容器打开的页面进行横屏?

前言

相信看到标题的朋友,会产生两个疑问,mPaas是什么?特定的H5容器是什么?mPaaS是源于支付宝 App 的移动开发平台,特定的H5容器是一款移动端 Hybrid 解决方案 SDK(Nebula SDK)。目前已有多家金融机构使用此套框架开发App,例如广发银行、农业银行、邮政储蓄、招商证券等。这里我就不做过多介绍了,感兴趣的朋友可以查看mPaas官网进行一个了解。

 

一背景

对于金融APP来说,一些机构会针对平板单独开发一套APP,这就涉及到了横竖屏的问题。如果是mPaas框架基础开发的项目,原生部分我们的开发者可以自由控制。H5容器使用的是mPaas提供的Nebula容器,那我们如何将Nebula容器打开的H5页面进行横屏呢?今天我就针对这个问题,提供较为有效的解决方案。

 

二配置

1.在Portal或者主工程app中重新声明H5Activity,设置Activity横屏。

<activity android:name="com.alipay.mobile.nebulacore.ui.H5Activity" 
          android:configChanges="orientation|keyboardHidden|navigation|screenSize|smallestScreenSize|screenLayout" 
          android:exported="false" 
          android:hardwareAccelerated="true" 
          android:screenOrientation="landscape" 
          android:theme="@style/tablauncher_theme" 
          android:windowSoftInputMode="adjustPan">
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.DEFAULT" />
  </intent-filter>
</activity>

如果您的项目是Inside 或 AAR工程,可不配置如下内容。

2.由于 PB 工程引用资源较特殊,需要在 Portal 中 app 下创建 res_slinks 文件,其中引用 nebula-build 名添加到此文件下。此文件中 Bundle名 需逐行添加。

3.打开前端页面时,添加启动参数,操作方式如下:

Bundle bundle = new Bundle();
bundle.putString(H5Param.LANDSCAPE,"landscape");
MPNebula.startApp("实际离线包id",bundle);

 

本文地址:https://blog.csdn.net/qq_42616873/article/details/110188855

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐