【前端面试题】—18道有关混合开发的面试题(附答案)

2022-12-23 0 619

【前端面试题】—18道有关混合开发的面试题(附答案)

而今“格朗普雷县网络连接”实在要摒弃整座网络行业。后端合作开发的工程项目,能运转在应用程序(PC端和终端端)、伺服器、iOS和 Android控制系统中,但随着工程项目两栖作战,与原生植物App较之,混和合作开发设计这类的严重不足渐渐体现出来。目前,技师们也在渐渐地攻下这些困境。因此,混和合作开发部分的丘托韦主要实地考察Bilaspur对混和合作开发的知觉。怎样同时实现混和合作开发、怎样配搭自然环境,以及混和合作开发中的许多示例都是值得称赞合作开发人员高度关注的。1、怎样保证 InAppBrowser能被完备初始化?在初始化内部天然资源的HTML文档中的条码上要重新加入type=” text/javascript”  charset=“utf-8”  src=“cordova. js”>以保证 InAppBrowser应用程序能被完备初始化,不然会再次出现顶部回到按键难以再次出现的情况。2、怎样借助 InAppBrowser应用程序初始化内部天然资源?在 config. xml文档中重新加入href=”*”/>(即将任何人内部天然资源放进Transact中),就能借助 InAppBrowser应用程序初始化内部天然资源了。3、在混和合作开发中,怎样同时实现下拉创下。沙莱县创下和读取?你碰到过什么问题?用 iscroll同时实现下拉创下、沙莱县创下和加载,效用较为差,在网页上根本无法每边翻转,不能以内翻转。假如把网页内嵌到应用程序的tab里边,就会制止应用程序的以内翻转。假如要同时实现以内转换,要是把 iscroll应用程序中的onBeforeScrollStart:functione{ e.preventDefault ( );}改成 onBeforeScrollStart:null优点:虽然同时实现了下拉创下、沙莱县创下,但是效用不是较好,有时会“弹”不回来,和原生植物的有许多差别。4、HTML5和 Native的可视化怎样同时实现?WebView原本就全力支持 JavaScript和Java互相初始化,只需要迈入 WebView的 JavaScriptJAVA继续执行机能,并通过代码 mWebView. addJavascriptInterface(new JsBridge( ),” bxbxbai”)向HTML5网页中注入一个Java对象,然后就能在HTML5网页中调用 Native的机能了。5、微信是用 Hybrid合作开发做得最好的App之一,它是怎样做可视化的?在微信合作开发人员文档中能看到,微信JS-SDK封装了微信的各种机能,比如分享到朋友圈、图像接口、音频接口、支付接口、地理位置接口等。合作开发人员只需要初始化微信JS-SDK中的函数,然后统一由JS-SDK初始化微信中的机能这样的好处就是,合作开发人员写了一个HTML5的应用或网页,在 Android和iOS版本的微信中都能正常运转。6、Hybrid合作开发适用于哪些机能?Hybrid合作开发就是在 Native应用程序中内嵌了 HTML App的机能,这方面微信应该是做得最好的。由于HTML5的效率以及耗电问题,可能用户对 Web App的体验不满意,Hybrid App也只适用于某些场景。假如把一个登录和注册机能也做成HTML5版本的App,在弱网络自然环境下,这个体验应该会非常差,或许用户等半天还没读取出网页。许多活动网页(比如“秒杀”、团购等)适合采用HTML5合作开发,因为这些网页可能设计得非常炫而且复杂。HTML5合作开发非常简单,并且这些网页时效性短,更新更快,因为一个活动说不定就一周时间,下周就下线了。而假如用 Native合作开发,成本是很高的。7、Web App和混和App的区别是什么?区别如下。(1) Web App指采用HTML5语言写的App,需要安装触屏版网页应用。优点包括:合作开发成本低,迭代速度快,能跨平台终端。户留存率低,设计受限制,体验较差。(2)混和App指半原生植物半Web的混和App,需要安装它才能访问Web内容。例如新闻类App、视频类App普遍采取Native框架web内容,混和App极力打造类似于原生植物App的体验,但仍受限于技术和网速等诸多因素。8、什么是 Android混和合作开发?怎样申请权限?Android混和合作开发使用Java和H5共同合作开发界面,通过 JsBridge进行通信,一部分界面首先权限能在 Manifest.xml中申请, Android 6.0以上版本能通过代码动态申请。9、什么是混和合作开发?混和合作开发(HTML5合作开发)相当于一种框架合作开发。该模式通常由“HTML5云网站+App应用应用程序”两部分构成,App应用应用程序只须安装应用的框架部分,而在每次打开App的时候,从云端取数据并呈现给手机用户混和合作开发的另一种形式是套壳App。套壳App就是用H5的网页打包成App。虽然App能安装到手机上,但是每个界面都是通过HTML5合作开发的网页。这种App数据都保存在云端,用户每次访问都需要从云端调取全部内容,这样就容易导致反应慢,每打开个网页或单击一个按键,读取网页都需要等很长时间。10、混和App合作开发的优势是什么?优势如下。时间短。基本都是直接嵌套模板或打包成App,这会节省很大一部分时间。价格便宜。代码不需要重新写,界面不用重新设计,这些都是固定的,可替换的地方很少,所以价格相对便宜。11、混和App合作开发的劣势是什么?劣势如下。(1)机能、界面难以自定义。所有内容都是固定的,所以要换一个界面,或增加个机能,都是不能的。(2)读取缓慢、网络要求高。混和App数据全部需要从伺服器调取,每个网页都需要重新下载,所以打开速度慢,占用的网络带宽高,缓冲时间长,容易让用户反感。(3)安全性较为低。代码都是以前的代码,不能较好地兼容最新的手机控制系统,且安全性较低。网络发展快,病毒多,假如不实时更新,定期检查,容易产生漏洞,造成经济损失。12、合作开发原生植物App还是混和App,你是怎样选择的?选择方法如下。(1)根据预算选择:现在预算有多少?在应用转型上打算花多少金钱、时间、精力?假如预算在几千元到一万元之间,建议选择混和App。混和App有它存在的道理,并非一文不值,很多混和App发展好了再转型成原生植物App。(2)根据需要选择:假如只是简单地卖个小商品,那么能选择混和App;假如想做类似淘宝的大型店铺,有很多用户、很多店、很多现金流,能选择原生植物App。13、怎样判断一个App是原生植物App、混和App还是 Web App?从以下方面进行判断。(1)看断网情况。通过断开网络,创下网页,观察内容缓存情况,能有一个大致的判断,能正常显示的就是原生植物App,显示404或者错误网页的就是 Web App。(2)看网页布局编辑。假如网页布局较为简单,可能是原生植物App;假如网页布局很复杂,网页动画很多,可能是 Web App。(3)看复制文章的提示,需要通过对比才能得出结果。比如,长按文章信息网页,假如再次出现文字选择、粘贴机能的是 Web App,不然是原生植物App。有些原生植物App开放了复制、粘贴机能或者关闭了这些机能,而 Web App中HTML5中的CSS屏蔽了复制、选择机能等,需要通过对目标测试App进行对比才能分辨。(4)看读取方式。假如在打开新网页的导航栏下面有一条读取线,这个网页就是 Web App;假如没有,就是原生植物的App。

(5)看App顶部导航栏是否会关闭按键。

假如App顶部导航栏中再次出现了关闭按键或者关闭图标,那么当前App是 Web App,原生植物App中不会再次出现(除非设计合作开发人员特意设计)、美团、大众点评、微信的App。当读取H5网页过多的时候,左上角会再次出现“关闭”两个字。

(6)看网页创下情况。

假如网页没有明显创下现象就是原生植物App,假如有明显创下现象(比如闪一下)就是 Web App,比如淘宝的众筹网页等。

在沙莱县网页的时候显示网址提供方的一定是 Web App。

(7)借助控制系统合作开发人员工具。

在手机的“设置”中,选择“合作开发人员选项”→“显示布局边界”,选择迈入后再次查看App整体布局边界,这样所有应用控件的布局就会一目了然。

14、混和应用程序的同时实现原理是什么?

在本地应用程序中添加 Web View来显示HTML5(CSS、 JavaScript)部分的内容,集中在 JavaScript和本地代码中同时实现逻辑操作。通过 JavaScript来同时实现本地代码和HTML5之间的可视化操作。

15、谈谈 React与 ReactNative的区别。

ReactNative和 React共用许多抽象层,但具体有很多差异,且目标平台不同。

React用于合作开发web网页,为了使后端的视图层组件化,并能更好地得以复用,它能使用简单的HTML条码创建许多自定义组件条码。

在组件内部绑定事件,只需要操作数据就会改变相应的DOM渲染结果。

ReactNative目前根本无法合作开发iOS/Android App,它是程序员能使用后端的技术去合作开发运转在不同平台(如iOS、 Android等)上的工程项目框架。

ReactNative在 JavaScript中用 React抽象 Android、iOS原生植物的UI组件,代替DOM元素来渲染,比如用<View>取代<div>,用<image>替代<img>等。

16、ReactNative中,怎样动态设置 TextInput的高度,以便网络连接响应式网页布局?

使用<TextInput style={ [ { height:Math. max(40, this .state. height ) }]}/>。

17、ReactNative与原生植物 Android常用的通信方式有几种?

常用的通信方式如下。

(1)通过 RCTDeviceEventEmitter事件通信。

(2)通过回调函数异步通信。

(3)通过 Promise规范同时实现通信。

(4)通过原生植物 Android直接向 ReactNative传递常量数据。

18、从 ReactNative中数据发生变化到把新的数据渲染到网页中, ReactNative生命周期函数按照什么顺序继续执行?

当组件数据发生改变时,会进入存在期,从而继续执行组件生命周期方法,属性的改变与状态的改变相差一个阶段。

假如属性改变,会依次继续执行 componentWillRecivePros、 shouldComponentUpdate、 componentWillUpdate, render, componentDidUpdate.

假如状态改变,会依次继续执行 shouldComponentUpdate、componentWillUpdate、 render、 componentDidUpdate。

推荐阅读

【后端丘托韦】—21道有关终端端的丘托韦(附标准答案)

【后端丘托韦】—19道有关后端测试的丘托韦(附标准答案)

【后端丘托韦】—26道HTTP和HTTPS的丘托韦(附标准答案)

【后端丘托韦】11—18道有关模块化合作开发的丘托韦(附标准答案)

【后端丘托韦】10—21道关于性能优化的丘托韦(附标准答案)

【后端丘托韦】09—44道常见Augluar基础丘托韦(附标准答案)

本文完〜

【前端面试题】—18道有关混合开发的面试题(附答案)

【前端面试题】—18道有关混合开发的面试题(附答案)

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务