cari

Rumah  >  Soal Jawab  >  teks badan

android - 最近火起来的h5app是否已经能够完美转化原生控件?

最近发现很多H5app的框架,如react-native,wex5,phoneGap等。开发者只要写html5+js+css就可以了,网页端打开无可厚非,而打包成android客户端,iOS客户端的时候,上面的按钮文字等界面,用的是网页加载的还是全部转化成原生的控件呢?如iOS的UIView UIbutton

迷茫迷茫2768 hari yang lalu1225

membalas semua(15)saya akan balas

  • 天蓬老师

    天蓬老师2017-04-17 17:31:25

    1. 大部分框架(比如PhoneGap)并未将html5转化为原生控件,而是使用native
      webview去加载html,跟你打开浏览器浏览网页是一样的,以这种方式来实现跨平台。但这些框架又提供了js调用native代码的能力,这样前端语言开发的业务逻辑可以访问到一些系统原生的功能(电量、定位等等)。这种方式构建就是hybrid应用,在UI方面,简单的布局、空间使用html5开发,复杂布局和控件使用native语言开发,框架提供将native语言开发的控件实例化并加入到应用布局中的能力,所以hybrid方式灵活且成本低。

    2. 由于浏览器渲染html页面性能仍然无法媲美native,所以像react-native这种框架直接使用native控件,但控件的描述是基于框架自定义的js语法而不是html5,因为将html5转化为原生控件太复杂(html标准很复杂),并且大部分框架的目的是跨平台(android ios),要做转换每个平台都得做,这与开发一个web浏览器有什么区别呢。

    balas
    0
  • 阿神

    阿神2017-04-17 17:31:25

    所以你们一个也没写过fuse 原生绑定html objc

    balas
    0
  • 大家讲道理

    大家讲道理2017-04-17 17:31:25

    目前来说,html5在移动设备上的顺滑度还不如源生的一些控件。
    二者相结合来开发一个app是更好的选择。
    常用固定的内容用源生api,不常用或者页面更新频率高的内容用html5来构建,提高开发效率和数据更新时效性。

    balas
    0
  • 黄舟

    黄舟2017-04-17 17:31:25

    首先,h5app不知道你的理解是不是app里嵌套网页。=。=!其实不全都这样子的。
    比如ReactJS Navite其实应用一种『曲线救国』的方法,你写好JS代码后还是要解析成原生的代码的。

    balas
    0
  • 黄舟

    黄舟2017-04-17 17:31:25

    至少react-native 是转换为原生组件的
    参见链接 -- Hello React Native 段落

    balas
    0
  • PHP中文网

    PHP中文网2017-04-17 17:31:25

    至少APICloud的还是通过native跳用安卓和iOS底层的一些东西,有些界面的一些东西用js却是也可以实现但是不如原声的灵活

    balas
    0
  • 高洛峰

    高洛峰2017-04-17 17:31:25

    至少体验方面还是有差,但也和开发者水平有关。感觉过个半年后会有很大进步。仍然很看好这个方面

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:31:25

    看是什么类型的App了,如果只是普通的新闻客户端,不追求调用什么系统功能,直接App里套个WebView访问WAP站,本地实现记住密码和自动登录就够了.

    balas
    0
  • 高洛峰

    高洛峰2017-04-17 17:31:25

    现在h5还没办法取代原生开发,混合开发可能是更好的选择,这样可以结合2者的优势。

    balas
    0
  • 怪我咯

    怪我咯2017-04-17 17:31:25

    想用h5代替源生 这几年看是没戏 至少我可以说局限性很多 h5炒那么火 做游戏的不还是cocos或者unity
    我知道应用很多 但是不烧钱的应用里 还是游戏赚钱的最多
    大公司更不缺android ios工程师
    但是小公司做个信息发布类应用还是没问题的

    balas
    0
  • Batalbalas