mPaas-H5容器 如何将阿里特定H5容器打开的页面进行横屏?
程序员文章站
2022-06-21 20:24:26
前言相信看到标题的朋友,会产生两个疑问,mPaas是什么?特定的H5容器是什么?mPaaS是源于支付宝 App 的移动开发平台,特定的H5容器是一款移动端 Hybrid 解决方案 SDK(Nebula SDK)。目前已有多家金融机构使用此套框架开发App,例如广发银行、农业银行、邮政储蓄、招商证券等。这里我就不做过多介绍了,感兴趣的朋友可以查看mPaas官网进行一个了解。一背景对于金融APP来说,一些机构会针对平板单独开发一套APP,这就涉及到了横竖屏的问题。如果是mPaas框架基础开发的....
前言
相信看到标题的朋友,会产生两个疑问,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