精华内容
下载资源
问答
  • JavaScript跨平台游戏开发实践:Javascript
  • 近年来,移动端上各种跨平台开发方案百花齐放,一方面是因为随着移动互联网的迅猛发展,纯原生开发无法满足业务快速增长的需求;另一方面,跨平台可以增加代码复用,降低开发成本。...众多跨平台开发框架的应用...

    近年来,移动端上各种跨平台开发方案百花齐放,一方面是因为随着移动互联网的迅猛发展,纯原生开发无法满足业务快速增长的需求;另一方面,跨平台可以增加代码复用,降低开发成本。在移动终端设备的软硬件、操作系统、开发工具链和技术社区等日趋成熟的今天,众多开发者对“造轮子”跃跃欲试。

    从早期的 PhoneGap,到后来的 React Native,再到现在的 Flutter,

    众多跨平台开发框架的应用实践,与原生技术展开了一场博弈。

    用户该如何在众多选择中,做好技术选型及落地实践?使用跨平台开发框架,应该注意哪些问题?对其通病有何应对方案?

    InfoQ 记者带着这些问题,采访到了腾讯微信客户端工程师方秋枋老师。另有结合微信团队目前采用的跨平台方案分析,希望能对大家有所启发!

    InfoQ:从早期的 PhoneGap,到后来的 React Native,再到现在的 Flutter,移动端跨平台开发框架一直是圈子里的热点。能否谈谈你对于跨平台开发框架的认识?这些年技术在不断迭代和演讲,你怎么看待他们背后的发展逻辑?

    方秋枋:“Write once, run anywhere” 一直以来就是开发者的梦想。在移动客户端领域,主流的跨平台开发框架大体经历了三个阶段。

    第一阶段,主要通过 WebView 绘制界面,并通过 JavaScript Bridge 将系统的一部分能力暴露给 JS 调用。PhoneGap、Cordova 都可以归属于这一类。

    第二阶段,大家发现用 WebView 承载界面有性能等各种问题。于是将绘制交回给原生,通过 JS 来调用原生控件,编写业务代码。Weex、RN 就是其中的佼佼者,这也是现在绝大部分跨平台框架的思路。

    第三阶段,虽然使用原生控件承载 UI 解决不少渲染的问题。但是处理平台差异性仍然需要耗费极大精力,效果也不尽如人意。这个时候,Flutter 提出的解决方案,就是连绘制引擎也自研,尽可能减少不同平台之间的差异性, 同时保持和原生开发一样的高性能。因此目前业界对 Flutter 的关注度也是最高的。

    对于这样的发展路线, 个人认为根本原因还是 Web 标准和能力在移动客户端得不到很好的扩展与支持。实际上,Web 平台才是真正意义上的跨平台, 我们在所有主流操作系统上都能通过浏览器来访问相同的网页。目前第二,第三阶段方兴未艾,而 PWA、WebAssembly 等进一步增强 Web 能力的技术和标准并未成熟。 因此,在可预见的未来,移动端跨平台开发还是主要以当前的形式为主。但是,随着 Web 标准和能力的增强,最终绝大多数应用,只需要使用 Web 栈技术即可构建。

    InfoQ:据了解,用户在选择跨平台开发框架时,比较看重其是否具备热更新的能力。但在 2017 年 3 月,苹果下发了警告邮件,禁止 JSPatch 等 iOS App 热更新方案,你如何看待“热更新”这件事?

    方秋枋:前段时间围绕热更新, InfoQ 主编徐川已经写了一篇非常好的文章移动开发的罗曼蒂克消亡史》。因此在这里就不再赘述。

    目前 iOS 平台的热更新更多地是用于修复 Bug,而不是直接拿来进行业务需求的开发和更新。实际上对业务体验是无害的,但是也违反了苹果的规则。因此,大家目前在 iOS 平台基本只敢偷偷摸摸地做,没有新的开源项目公布。而安卓就百花齐放,有非常多的热更新框架可以选择。然而,安卓平台侧拥有了非常强的热更新能力,用户体验有变得更佳么?目前看来,好像还是没有的,因为安卓平台权限控制等相关问题的存在,反而厂家会利用漏洞来骚扰用户,获取隐私。

    从用户角度来说,怎么真正利用好热更新能力来服务用户,提升应用体验,才是开发者真正需要考虑的问题。但是这也需要取舍。更开放的平台策略更允许热更新能力的存在,同时也会带来其他的一些问题。

    从开发者角度,我希望平台能够允许和放开热更新技术。但从一个普通用户的角度,我更喜欢当前苹果的策略。

    InfoQ:有人说,国外 App 开发偏重于“原生”,而国内 App 讲究的是“迭代”。你认同这句话吗?为什么?

    方秋枋:我不太认同这句话。其实国内国外的应用,都在不断地迭代更新。只不过当下情况,国外 App 开发更倾向于使用原生技术进行开发,而国内则对跨平台的热更新能力非常关注。

    InfoQ:2018 年,Airbnb 放弃使用 React Native,回归使用原生技术,究其原因主要是:项目庞大后,维护困难;第三方库良莠不齐;兼容上需要耗费更多精力……这是否是跨平台框架存在的通病?有什么解决办法?

    方秋枋:这的确是跨平台框架存在的通病。 跨平台意味着需要花费很多时间来解决平台差异性问题,同时要面临第三方库不够原生平台丰富健壮的现状。跨平台其实是牺牲部分功能和体验,换取开发速度和一致性的权衡,并不是业务开发的银弹。

    目前并没有一个能完善解决这些问题的解决方案。 Flutter 可能相对来说在兼容上会做得好一点,通过自底向上自研框架来尽可能减少平台差异,但是可靠性仍需进一步检验,引入 Flutter 需要大家对自己公司业务有非常清晰的认知,并权衡好利弊。

    对于初创公司和普通开发者,我个人的建议是可以利用小程序来进行跨平台开发,把这些繁琐的兼容问题抛给小程序开发框架的开发者处理,这样就可以把更多精力放在业务开发,也省却了维护两个平台发版的工序。

    InfoQ: 目前,微信团队采用的是哪种跨平台开发框架?基于哪种核心语言?是出于什么考虑选择这种语言的?聊一聊该框架的实现原理?

    方秋枋:目前微信团队并没有统一使用一套跨平台开发框架。我们也在积极探索各种可能性。

    微信小程序,是前面提到的第一阶段和第二阶段的融合做法,利用 Webview 作为渲染容器,通过规定 Web 技术栈的子集(WXML、WXSS),让客户端获得更多的渲染性能优化空间,同时通过规范化组件的使用,逐步引入原生控件代替 Webview 渲染。

    除此之外,我们还探索了基于 C++ 进行跨平台开发。实质上还是第二阶段的做法,只不过是使用 C++ 作为中间语言,去编写业务代码和调用原生控件。为什么要采用 C++ 呢? 因为 C++ 安全性会更高一点,同时性能也会更佳。可以应用在一些对安全性要求比较高的场景。 如果大家对基于 C++ 构建跨平台框架和业务开发有兴趣。可以关注一下 QCon 全球软件开发大会(广州站), 我会更详细地阐述如何基于 C++ 构建跨平台开发框架。

    InfoQ:你认为跨平台开发的难点是什么?Flutter 是如何解决这些问题的?你如何看待 Flutter 的发展?

    方秋枋:从框架开发者的角度,我认为跨平台开发的难点就在于处理平台差异性。从框架使用者的角度,难点在于如果框架出问题了,维护成本将会变得非常高。

    Flutter 通过自底向上自研框架来尽可能减少平台差异,同时将 Dart 语言, 渲染引擎等组成部件都进行完整开源,任何人都可以调试源码,当然维护门槛也是很高的。我认为如果谷歌愿意继续大力投入 Flutter 的开发,Flutter 会是跨平台开发框架非常好的一个选择。

    展开全文
  • C++设计模式--基于Qt4开源跨平台开发框架
  • 资源名称:C 设计模式——基于Qt4开源跨平台开发框架资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
  • MLN是一个移动跨平台开发框架,让开发者用一套代码编写Android,iOS应用。MLN设计思路贴近原生开发,客户端开发者的经验,可以Swift迁移到MLN上,轻松构建出跨平台移动应用。 专为客户端开发者设计。 增加包体积极...
  • JDFlutter 京东跨平台开发框架

    千次阅读 2019-05-20 18:34:25
    JDFlutter 是商城共享技术部-多端融合技术部推出的新一代跨平台开发框架,可快速集成至现有 Android/iOS 工程,开发者可借助 JDFlutter 平台快速完成 Flutter 业务开发。JDFlutter 平台提供了大多数京东样式 UI ...

    点击上方“开发者技术前线”,选择“星标”
    13:21 在看 真爱
    作者: 京东商城共享技术部 | 来源:京东商城技术团队

    责编: 可可

    前言

    JDFlutter 是商城共享技术部-多端融合技术部推出的新一代跨平台开发框架,可快速集成至现有 Android/iOS 工程,开发者可借助 JDFlutter 平台快速完成 Flutter 业务开发。JDFlutter 平台提供了大多数京东样式 UI 组件库以及丰富的原生 API,可满足复杂业务需求。未来 JDFlutter 会和 JDReact 一起构成京东 ARES 跨端应用开发平台的双引擎!

    Flutter 简介

    Flutter 是 Google 公司2018年2月27日发布的第一个开源跨平台软件开发工具包 (SDK),支持Android、iOS两个平台,可实现高性能、高保真的应用程序开发。开发者借助 Flutter 开发平台可轻松实现自己的应用,其开发框架默认支持了 Material(类似 Google 设计风格)和 Cupertion(类似 iOS 设计风格)两种风格,且无论从UI样式、用户体验上都非常接近原生应用。经过近7个月的优化改进2018年9月19日 Google 公司在上海正式发布非常接近1.0正式版本的 Flutter Release Preview 2,基于其优越性能 Flutter 有望成为未来应用开发的主流工具。

    Flutter 类似且优于 Html、React Native、Weex 等跨平台解决方案。ReactNative 将 JSX 生成的代码最终都渲染成原生组件,JS 与原生通过 JSBridge 传递数据。而 Flutter 则采用完全不同的设计,底层是一套独立的渲染引擎–Skia,所有组件也都是独立于平台的 Widget 组件,可以在最大程度上保证了跨平台体验的一致性。

    京东目前已经有非常成熟的跨平台解决方案 JDReact,如何在 JDReact 与 Flutter 中选择合适的开发方案?我们认为如果是需要进行线上业务包升级、热修复等动态更新的情况,优先选择 JDReact;没有动态更新需求的可以选择 Flutter。

    目前闲鱼 APP 和美团 APP 已在部分页面尝试接入 Flutter,根据公开的信息我们对比了三家 Flutter 方案:

    集成与调试

    1Flutter包集成

    现阶段如要开发一个全新的 App,Flutter 是个很好的选择,作为新一代跨平台解决方案,使用 Flutter 官方提供的创建脚本、创建工具即可开发完成。然而在大多数情况下,我们面临的是现有 APP 已上线很久,新的页面或者部分页面的改造需要尝试去使用 Flutter 开发,在这种情况下,我们需要创建一个 Flutter 模块,用于完成 Flutter 页面开发,并为现有 APP 作为宿主工程添加对 Flutter 模块的依赖。

    兼顾到不需要 Flutter 开发环境的同事,我们对编译脚本进行了修改:

    ▲编译开发环境配置

    Flutter 开发需要在本地配置完整的开发 SDK,并增加 jdFlutter.debug 标志,如果开发人员不是做 Flutter 开发的就不用设置此标志,如果是开发 Flutter 的研发则需要配置一下此标志进行本地代码开发。通过这样的方式,可以做到 Flutter 开发不影响现有工程的编译。Flutter 业务代码采用 git submodule 的方式进行代码管理,Android、ios 工程仅需设置好对Flutter的依赖即可。

    ▲git 库管理

    2JDFlutter 设计框架

    ▲JDFlutter 架构图

    最底层提供了灰度、降级容灾、数据统计等功能,这些功能都统一接入后台管理系统。

    中间层为核心开发包:JDFlutter-core-widgets 为 JDFlutter UI 组件库,样式等都满足了京东设计规范,目前支持了 Button、CheckBox、Dialog、mage、Loading、NavgationBar、Text、PullToRefresh 等。Flutter 框架内集成了两种风格的 UI 组件库:一种是 Google Material 设计风格,另一种为 Apple Cupertion 设计风格。这两种设计风格可以很好满足开发者对样式的需求,与原生页面无异。然而当集成到京东客户端时,这些样式并不能满足需求,因此我们提供了适合手机京东(京东 APP)的 UI 组件库(不断完善中)。

    JDFlutter-core-lib 为 Dart 与原生之间通信的桥梁,我们提供了原生接口,如:网络请求 JDNetwork、设备相关 JDDevice、页面跳转 JDJumping、埋点 JDMta、分享 JDShare、异常上报 JDReporter 等。

    最上层为接入层,包含了业务开发集成、Android/iOS 两端客户端的集成。

    ▲JDFlutter 提供的组件库和 API demo

    3打通 JDReact Native API

    在 Flutter 之前,京东已有了非常成熟稳定的跨平台开发解决方案 JDReact。在 JDReact 框架中,已经封装了非常多的 Native API,通过 JSBridge 传递原生与 JS 之间的数据。

    为使 Flutter 具备众多京东 App Native API 访问能力,有以下办法:

    按照官方 platform channels(https://Flutter.io/platform-channels/)写法,封装 Flutter Api;

    按照 Plugin 的方式,将每一个 Native API 写成 plugin;

    全部复用 JDReact 已有 Native API。

    目前 JDReact 提供的 Native API 有上百个,并且都经过了严格的测试。如果按照前两种方式,想要逐渐对标 JDReact native 能力,工作量将会变的很大,且需要大量的测试工作。因此我们采取了最后一种方式,全部复用现有 JDReact Native API:通过定义统一接口的方式,对原有 JDReact 框架进行了改造,如下图为改造后的框架架构图:

    ▲JDFlutter 复用 JDReact API 框架

    Adapter 层中 Native 代码分别实现了 React Native 与 Flutter 对应接口,JDReact 通过 JSBridge 将 Native API 暴露给 JS,JDFlutter 通过 MethodChannel 将 Native API 暴露给 Dart。为了后续的开发方便,我们分别在 JS 与 Dart 侧进行了二次封装,保证了在无需知晓原生实现的情况下可以顺利的进行业务开发。

    4业务集成

    目前 Flutter 业务包集成还不支持类似 JDReact 拆分打包–不同的业务自己打自己的,相同的 lib 部分不打进去的分包机制,解决办法是将所有业务都打成一个包,解析原生传递的路由及跳转参数信息,由内部路由决定跳转逻辑。

    ▲业务路由与参数传递

    main.dart 为主入口,接受原生传递的跳转协议,进行参数解析,并决定业务路由,进行路由分发,同时将跳转参数 params 传递至各业务入口。

    ▲业务集成目录

    为了实现业务包的线上集成,所有的业务代码都位于 lib 目录下。同时为保证不同开发者之间互不影响,每个业务都在 lib 目录下单独管理,相应的与自身业务相关的图片资源也独立管理。assets 文件夹存放的是公共资源,不同的业务都可直接引用位于该目录下的资源。

    5调试

    很多开发 JDReact 的小伙伴都是前端开发对 Android/iOS 原生 APP 有可能不熟悉。为了开发与调试的方便我们在 MarsWorks 后台增加了 JDFlutter 调试功能,如下图:

    ▲开发调试 IDE

    Flutter 业务开发只需要在手机上安装好我们提供的 apk 安装包,手机连接电脑后,点击“启动 Flutter 调试”绑定手机,修改代码后点击“Reload”按钮即可实现 Flutter 热加载。

    未来我们会增加对 ios 模拟器的支持,点击“启动 Flutter 调试”即可启动模拟器直接跳转到对应的页面。

    6Demo 演示

    这是手机京东使用 JDFlutter 改造的签到排行榜页面,页面原先使用 JDReact 实现。改造后的页面操作很流畅,整体的用户体验非常接近原生,几乎很难分辨是用原生还是 Flutter 实现。接下来逐步会有更多的页面、场景来尝试使用 JDFlutter。

    ▲JDFlutter 签到排行榜

    数据统计

    JDFlutter 对线上数据进行统计主要包括业务数据和异常数据,无论是哪一方面的数据出现异常,都要及时采取措施。

    1业务数据统计

    业务数据主要包含业务的 DAU、UV、PV 等基础数据,有以下方案可以统计:

    ▲数据统计

    方案1:在原生跳转入口处增加埋点。

    方案2:在Flutter入口main路由中增加页面埋点。

    方案3:在Flutter业务页面中增加埋点。

    以上3种方法都可以统计出页面数据,方案1可以统计出入口的数据,方案2可以统计出除降级以外的业务数据,方案3可以统计出更精确的业务数据,同时可以提供更详细的其他字段如进入页面时从后台下发的数据。

    JDFlutter 框架已经默认支持了方案1和方案2两种数据统计,对这两种数据进行分析不仅可以看出降级率,也可以看到 JDFlutter 页面启动情况;第3种方式的数据需要接入的业务根据需要完成添加。

    2异常数据监控

    业务上线后会遇到各种各样的问题,异常收集与分析就显得尤为重要。我们通过收集以下几种异常来对异常进行分析:

    ▲异常监控

    后台收集到的异常为了能够更好的分析是哪一块业务代码出现问题,我们在异常数据中加入了业务名称,以及跳转时的参数信息,可以做到有针对性的对 dart 代码的异常进行分析,如果某个业务异常量暴增,我们会对其进行降级处理。

    降级容灾

    ▲JDFlutter 业务降级容灾图

    其中降级容灾池数据由后台下发,包含每一个线上业务的降级情况,这其中包括:JDFlutter 业务名称,对应业务的 JDReact 名称,以及该 JDReact 业务的降级 h5 url。降级的过程为:从降级容灾池中取出与之对应的 JDReact 业务名,判断是否可以对该 Flutter 业务降级至 JDReact 业务。

    若JDReact业务可用,降级至JDReact业务

    若JDReact业务不可用且有h5降级页,则降级至h5页面

    若JDReact业务不可用且无h5降级页,JDFlutter统一错误页

    若无JDReact业务可降级且有h5降级页,降级至h5页

    其他情况,统一显示JDFlutter统一错误页

    以上的降级容灾图包含了所有可能的异常。这里值得一提的是为什么我们首先降级至 JDReact:由于我们目前 JDReact 的业务接入已有140多个,可能对这些业务部分优先尝试使用 JDFlutter,为了避免线上会遇到的各种问题,我们首先将其降级至原来的 JDReact 页面不仅可以保证业务的正常运行,用户体验也可以得到保证。

    对未来的展望

    目前 JDReact 多端融合平台仍然是京东 APP 主要的跨平台开发方案,京东内部接入 JDReact 的 App 有十几个,接入的 JDReact 业务已有140多个,未来会有更多的 JDReact 业务接入。JDFlutter 作为我们接入的第二个跨平台引擎,将来会不断有新业务接入,会有更多新场景使用 JDFlutter 实现。

    未来我们会继续完善 JDFlutter 这个新一代的跨平台开发方案,将多端融合平台打造成一个具备 ReactNative 和 Flutter 双引擎开发的平台。

    参考文献:

    名词解释
    JSX:是 react native 的语法格式

    JSBridge:原生与 js 之间通过 jsbridge 传递数据

    Skia:Flutter 的渲染引擎

    Widget:是 Flutter 组件

    桥接:就是原生与 Flutter 之间通信的桥梁

    分包机制:就是把不同的业务自己打自己的,相同的 lib 部分不打进去

    Native Api 能力:就是 Flutter 可以调用京东 App 原生方法的能力

    Plugin:是 FLutter 原生与 dart 通信的一种方式,还有一种是 methodchannel
    END
    开发者技术前线 ,汇集技术前线快讯和关注行业趋势,大厂干货,是开发者经历和成长的优秀指南。
    历史阅读

    腾讯新闻前端性能监控实践
    知乎客户端跨平台 Hybrid 调试实战
    移动帝国的消亡史,这十年经历的技术风雨

    好文就点个好看吧

    展开全文
  • 跨平台开发框架 weex 上手

    千次阅读 2016-06-15 13:16:57
    跨平台开发框架 weex 上手 本机系统:deepin 15.2 weex官网传送门 无论什么跨平台框架,都是让你用一种语言间接的调用现有平台的功能,现在这一类框架层出不穷,weex是由阿里巴巴开源,从阿里巴巴一线技术中...

    跨平台开发框架 weex 上手

    本机系统:deepin 15.2
    weex官网传送门

    无论什么跨平台框架,都是让你用一种语言间接的调用现有平台的功能,现在这一类框架层出不穷,weex是由阿里巴巴开源,从阿里巴巴一线技术中分离出来的,所以应该是可靠健壮的,在此根据官方教程动手试试

    安装Weex Playground

    weex可以使你方便的将weex集成到现有的android,iOS app中,这里我们不使用这种混合的方式,我们先尝试一下如何开发,所以安装这个。Weex Playground是一款方便的演示官方demo和查看自己的开发的工具

    下载传送门

    搭建环境

    weex的开发是使用html的,但是因为需要通过专有工具构建,所以我们还得先搭建开发环境

    1.安装node.js与npm包管理

    node官网传送门

    windows下安装很简单,下载安装包安装就好了
    ubuntu(deepin) 安装教程

    2.安装基于node.js的weex构建工具

    很简单,使用npm就可以安装了命令为sudo npm install -g weex-toolkit

    展开全文
  • 跨平台移动开发框架Xamarin今天发布了最新的2.0版本,新增Xamarin Studio集成开发环境以及 Xamarin Component Store在线插件商店。作为一个跨平台开发框架,在这一
    原文地址为:Xamarin 2.0:基于Mono跨平台开发框架

    跨平台移动开发框架Xamarin今天发布了最新的2.0版本,新增Xamarin Studio集成开发环境以及 Xamarin Component Store在线插件商店。作为一个跨平台开发框架,在这一框架内,开发 Android 和 iOS 应用可以不用转到 Eclipse 或者额外购买 Mac 并使用 Xcode,而继续在Visual Studio之中使用 C# 与 .NET Framework 进行。

    这个版本带来四个新功能:

    1、新的IDE——Xamarin Studio,Xamarin的CEO Nat Friedman表示,该IDE与iOS和Android SDK紧密集成,便于开发者在模拟器和真实的设备上构建、测试、调试应用程序。其实它是MonoDevelop 4.0改名了。不过只有windows安装包是这个名字,源码包还是Monodevelop,具体参见 The Making of Xamarin Studio

    Xamarin Studio提供了很多现代开发所需功能,包括代码完成、调试器、打包和发布应用(支持通过TestFlight发布应用程序)。对于Android,Xamarin还包含了自己的UI生成器(对于iOS,则使用苹果Xcode的UI生成器),此外还集成了Git和Subversion。。

    2、新的组件商店-(http://components.xamarin.com/开发者只需很少的操作就可以添加新的UI控件并可以连接到各种第三方云服务、图表和图形,Xamarin Component Store中的插件能够和Xamarin Studio以及Visual Studio无缝整合,开发者能够更方便地将这些部件和功能加入到自己的App中去。Xamarin.Mobile是该商店中的组件之一,提供了访问iOS、Android和Windows Phone等平台公共特性(如通讯录和相机等)的API。根据Xamarin提供的信息,如果设计合理,应用程序的代码量最多可以减少90%。

    3、在Visual Studio 中开发 iOS 应用程序:可以在Windows上通过Visual Studio开发ios应用,可以使用Visual Studio上的所有开发工具,包括TFS。这样在Android,IOS和Windows之间共享代码就更容易了。Xamarin的Android开发插件已经存在了好多年,现在又提供了支持iOS的插件。该插件可以很好地与微软的生态系统集成,可以在Mac
    OS机器的仿真器上进行远程调试和测试。在Mac OS上,因为iOS的现有限制,面向iOS的C#代码会通过AOT编译技术直接编译为ARM汇编代码。而在Android上,应用程序会转换为IL,启动时再进行JIT编译。

    4、针对个人开发者的免费的版本——Starter Edition:版本功能有所限制,只能用于开发一些比较小的应用程序(编译后代码最多为32kb)。付费的个人版本每年费用299美元,商业版本每年为999美元。MVP注意了,在2月底之前可以获得Business版本 To get the goods, simply send us a private message on our forums that includes a link to your MVP profile before the end of February http://t.cn/zYCTR1H

    之前购买过Monotouch和Mono for Android的同学可以升级到Business

    image

    详细信息:Announcing Xamarin 2.0

    下载:https://store.xamarin.com/

    AAAK{SLG)57OKPECDXV{CUG

    image

    关于Xamarin
    Xamarin始创于2011年,旨在使移动开发变得难以置信地迅捷和简单。Xamarin的产品简化了针对多种平台的应用开发,包括iOS和Android。Xamarin由许多著名的开源社区开发者创立和参与,而且也是Mono项目的主导者——C#与.NET框架的开源、跨平台实现。

    Xamarin 2.0带来新的IDE、支持iOS的Visual Studio插件和组件商店

    Introduction to MonoDroid/Android Programming for .NET/C# Developers

    第一次使用Xamarin就上手(一) - 安裝Xamarin Step-by-Step Part1

    第一次使用Xamarin就上手(二) - 安裝Xamarin Step-by-Step Part2


    转载请注明本文地址:Xamarin 2.0:基于Mono跨平台开发框架
    展开全文
  • 跨平台开发框架总结

    2020-04-20 10:23:44
    根据跨平台框架功能,我把跨平台框架主要分为3大类,分别是: Web App网页、Hybrid框架、含有编译转换的框架。 Web App网页 Web App其实不算是严格意义上的App,我觉得应该把它称作网页端自适应移动版更合适。 ...
  • c++设计模式--基于Qt4开源跨平台开发框架(源代码)c++设计模式--基于Qt4开源跨平台开发框架(源代码)c++设计模式--基于Qt4开源跨平台开发框架(源代码)c++设计模式--基于Qt4开源跨平台开发框架(源代码)c++设计模式--...
  • 好东西一定得分享,自己现阶段需要好好学习一下QT。C++设计模式--基于Qt4开源跨平台开发框架 完整清晰版中文PDF。好东西而且分数不贵!解压密码qt。
  • 跨平台开发是目前开发较热门的方向,React Native 在这方面取得了很大的成功,同时 Flutter 也获得了非常多的关注。React Native 采用 Web 框架开发并使用 Native ...
  • 近年来,移动端上各种跨平台开发方案百花齐放,一方面是因为随着移动互联网的迅猛发展,纯原生开发无法...从早期的 PhoneGap,到后来的 React Native,再到现在的 Flutter,众多跨平台开发框架的应用实践,与原生...
  • 自然会存在一个移动应用产品要针对每个平台开发一套的现象,这样带来的问题则是开发成本高、效率低下,进而会有进行跨平台开发的需求。从最开始以Cordova为基础的Hybrid混合开发技术,到React Native的桥接技术,到...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,413
精华内容 3,365
关键字:

跨平台开发框架