移动开发

Uncode系列开源后端开发组件

有些话、适合烂在心里 提交于 2019-11-27 16:12:00
概述 Uncode 是基于Java 语言的一系列开源后端开发组件,主要包括:移动后端开发框架Uncode- BaaS ,通用数据库访问组件Uncode-DAL和分布式任务调度组件Uncode-Schedule。其核心设计目标是使移动后端开发更加简单、易于维护,同时框架对部分基础操作进行了封装,提供认证、安全控制、Restful等基础功能模块,可以大大提高开发速度,降低开发成本。 发展概况 Uncode 项目开发始于2014年末,作者冶卫军(Juny Ye)架构师,具有多年电商、银行等大型系统开发和架构经验,随着移动互联网的流行,在移动互联网领域带领技术团队创业多年。深刻体会到中小公司在发展过程中所遇到的各种技术问题,所以发起 Uncode 系列开源项目,希望可以为中小公司快速发展提供参考和方向。Uncode 采用对商业应用友好的Apache Licence 2.0协议。开源以来在中国最大的开源社区深受广大开发者欢迎。 Uncode 系列项目秉承以下设计目:快速开发、代码简单、易于学习、功能强大、轻量级、易扩展,在坚持以上设计目标的同时,本着不重复制造轮子的原则,很好的应用和整合现有流行框架,打创功能全面的移动应用后端系列组件,彻底解放中小公司开发者的生产力,让中小公司开发者将更多的精力投入到具体业务实现,降低公司产品研发的时间和人力成本,使产品快速投向市场。 Uncode

一周盘点 | 跨平台移动Web开发框架DevExtreme在线演示等你来体验!

落花浮王杯 提交于 2019-11-27 13:53:16
更多资源及工具也可以在【 用户界面专题 】找到,及时了解最新动态>> DevExpress (1) DevExpress Demo示例展示:支持响应式设计的DevExtreme Web UI开发框架 | 附在线演示 DevExtreme Web为触摸设备和传统桌面构建响应式的Web应用程序,全程采用HTML5,CSS和JavaScript编写。此文盘点了几个经典示例供大家在线体验! (2) DevExpress Demo示例展示:提供原生体验的DevExtreme Mobile跨平台开发框架 | 附在线演示 DevExtreme Mobile是一款提供原生开发体验的跨平台移动开发框架。此文盘点了几个经典示例供大家在线体验! 你也可以 下载Universal安装包 或者访问 DevExpress中文网 查看更多示例和教程哦! 使用教程 (1) Qt使用教程:创建移动应用程序(三) 本教程主要介绍了如何使用Qt Quick控件为Android和iOS设备开发Qt Quick应用程序。我们使用Qt Creator实现Qt Quick应用程序加速基于加速度值变化的SVG(可伸缩向量图形)图像。 (2) Qt使用教程:创建Qt Quick应用程序(一) 本教程主要使用内置的QML类型并简单介绍Qt Quick的基本概念,同时还为大家介绍如何使用Qt Creator实现Qt

iOS 5 cocos2d 游戏开发实战:第4章 你的第一个游戏

╄→尐↘猪︶ㄣ 提交于 2019-11-27 08:18:27
在本文中,你将编写专属于你的第一个完整的游戏。它不会为你赢得什么奖项,但从中可以学到 cocos2d 基本要素的使用方法。我会逐步进行介绍,你还能学到一些 Xcode 的使用方法。 这个游戏是著名的 “Doodle Jump” 游戏的 “ 倒版 ” ,它被贴切地命名为 “DoodleDrop” 。玩家通过旋转屏幕尽可能躲避落下的障碍物。游戏的最终版本如图 4-1 所示,你可以在此提前了解一下将在本章创造的作品。 图 4-1 “DoodleDrop”游戏的最终版本 4.1 按部就班地创建项目 现在就打开Xcode,我将逐步引导你创建你的第一个cocos2d游戏。在Xcode中,选择File | New Project…,然后选择cocos2d Application模板,如图4-2所示。Xcode会要求你为新项目输入一个名称,这里输入DoodleDrop。如果需要,请把它存储到一个合适的位置。由于Xcode会自动创建一个名为DoodleDrop的子文件夹,因此不必多此一举。 图 4-2 通过cocos2d Application模板创建项目 此时Xcode的项目视图应如图4-3所示。取决于你所用的cocos2d和Xcode版本,可能还会有更多的文件,或者组的名字可能会有区别。 我已展开Classes和Resources组,它们分别用来添加源代码和游戏资源文件

细数移动IM开发中的那些坑

血红的双手。 提交于 2019-11-27 04:06:51
移动互联网时代的来临促使我们所有的开发者都要从用户视角出发,基于某一特定场景来创建应用,满足用户需求。通常,在这些应用中,沟通环节都是必不可少的。这就要求创业者不仅要花时间和精力来琢磨用户在某一特定场景下有何痛点需求,琢磨如何解决这一需求,并且可能还要花费更多的精力和时间来解决产品中“沟通”这一技术节点。而要解决沟通问题,就需要一套IM系统,这并不容易。当然,假设你有100个用户,什么都是容易的,但是假设你有了100万、1000万甚至1亿的用户,再简单的技术节点解决不好,都会成为灾难,何况IM系统还是存在许多技术难点和坑点的。今天,我们就来梳理一下IM开发中那些可能遇到的难点及坑点。 首先,来看服务端需要考虑的问题。 1.连接器的设计:连接器主要用来管理客户端的长连接。目前最好的连接器单台8G8核的服务器可以做到70万—100万的连接,而某些开发者只能做到4000左右的连接,相差好几个数量级。这里的奥妙在哪里呢? 2.中间件的设计:是否采用通讯中间件?通讯中间件的好处有哪些?如果不采用中间件,连接器和逻辑服务器的连接关系如何管理呢? 3.逻辑服务器:逻辑服务器通常简单一点,主要是根据业务逻辑进行最小粒度的划分即可。但是即便如此,还是有很多的开发者把看似相关实则不相关的逻辑放在一起,如把鉴权和message服务器放在一起。 4.状态服务器:状态服务器主要管理用户在线、离线的相关状态

C#使用Xamarin开发可移植移动应用(3.Xamarin.Views控件)附源码

丶灬走出姿态 提交于 2019-11-26 22:12:35
前言 系列目录 C#使用Xamarin开发可移植移动应用目录 源码地址: https://github.com/l2999019/DemoApp 可以Star一下,随意 - - 说点什么.. .NET core2.0 发布了,刺激,大致看了一下,很不错,打算后期学习.(不出意外,应该也会写个小系列). 虽然官方推荐用共享类库创建新的类库..然而我这个Demo还是使用的可移植.. 嗯..解释一下 为什么暂时没用共享类库.. 有些小BUG 可能是为了迎合其他类型的项目..所以在共享类库里创建的Page并不能很好的结合 - - 类似如下: 正常的应该是这样 呃其实我前面也说过这个,这个解决方案也很简单..在PCL项目里创建了..在复制过去..就好了..就是正常的..类似下面: 今天的学习内容? 嗯..今天主要学习Xamarin中的各种原装控件 比较多..你们可以不看..或者随便看看..我会把这些控件的相关属性都翻译一下,列出来,就当这是一个控件的查询字典吧.. 效果如下: 正文 1.ActivityIndicator 嗯,其实就是一个加载的圈..如图: 推荐场景..例如下拉刷新,或者上拉加载的时候,可以显示出来. 常用属性: 属性 值 Color 颜色属性,可以设置颜色 例如,“Color.Red”和“Red”都指定颜色为红色。 IsRunning Bool值,表示这个圈圈是否在转动.

C#使用Xamarin开发可移植移动应用终章(11.获取设备信息与常用组件,开源一个可开发模版.)

戏子无情 提交于 2019-11-26 22:12:19
Xamarin.Android系列 C#开发移动应用系列(1.环境搭建) C#开发移动应用系列(2.使用WebView搭建WebApp应用) C#开发移动应用系列(3.使用照相机扫描二维码+各种基础知识) C#开发移动应用系列(4.调用系统应用,以及第三方应用(调用与被调用)) Xamarin.Forms可移植系列 C#使用Xamarin开发可移植移动应用(1.入门与Xamarin.Forms页面),附源码 C#使用Xamarin开发可移植移动应用(2.Xamarin.Forms布局,本篇很长,注意)附源码 C#使用Xamarin开发可移植移动应用(3.Xamarin.Views控件)附源码 C#使用Xamarin开发可移植移动应用(4.进阶篇MVVM双向绑定和命令绑定)附源码 > C#使用Xamarin开发可移植移动应用(5.进阶篇显示弹出窗口与通讯中心)附源码 C#使用Xamarin开发可移植移动应用进阶篇(6.使用渲染器针对单个平台自定义控件..很很很很重要..),附源码 C#使用Xamarin开发可移植移动应用进阶篇(7.使用布局渲染器,修改默认布局),附源码 C#使用Xamarin开发可移植移动应用进阶篇(8.打包生成安卓APK并精简大小),附源码 C#使用Xamarin开发可移植移动应用进阶篇(9.混淆代码,防止反编译) C#使用Xamarin开发可移植移动应用进阶篇

移动开发新利器 | 一文深入了解 Flutter 界面开发

烂漫一生 提交于 2019-11-26 20:43:36
Flutter框架简介 跨平台应用的框架,没有使用WebView或者系统平台自带的控件,使用自身的高性能渲染引擎(Skia)自绘。 界面开发语言使用dart,底层渲染引擎使用C, C++。 组合大于继承,控件本身通常由许多小型、单用途的控件组成,结合起来产生强大的效果,类的层次结构是扁平的,以最大化可能的组合数量。 Rendering Pipeline 本文主要介绍build、layout、paint的三个阶段。 视图树 Widget&Element&RenderObject Flutter视图树包含了三种树,上图只是介绍了三颗树的基础class的对应关系和功能介绍。 创建树 创建widget树 调用runApp(rootWidget),将rootWidget传给rootElement,做为rootElement的子节点,生成Element树,由Element树生成Render树 Widget:存放渲染内容、视图布局信息,widget的属性最好都是immutable(如何更新数据呢?查看后续内容) Element:存放上下文,通过Element遍历视图树,Element同时持有Widget和RenderObject RenderObject:根据Widget的布局属性进行layout,paint Widget传人的内容 更新树 为什么widget都是immutable?

移动平台前端开发总结(ios,Android)

青春壹個敷衍的年華 提交于 2019-11-26 19:13:53
首先我们来看看webkit内核中的一些私有的meta标签,这些meta标签在开发webapp时起到非常重要的作用 <meta content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=0" name="viewport" /> 强制让文档的宽度与设备的宽度保持1:1,并且文档最大的宽度比例是1.0,且不允许用户点击屏幕放大浏览;尤其要注意的是content里多个属性的设置一定要用分号+空格来隔开,如果不规范将不会起作用。 <meta content="yes" name="apple-mobile-web-app-capable" /> iphone设备中的safari私有meta标签,它表示:允许全屏模式浏览 <meta content="black" name="apple-mobile-web-app-status-bar-style" /> iphone的私有标签,它指定的iphone中safari顶端的状态条的样式 <meta content="telephone=no" name="format-detection" /> 告诉设备忽略将页面中的数字识别为电话号码 1. h5页面有个很蛋疼的问题就是,当输入框在最底部,点击软键盘后输入框会被遮挡。 /

饿了么移动APP的架构演进

妖精的绣舞 提交于 2019-11-26 19:09:48
1 MVC 我们常说,脱离业务谈架构就是纯粹的耍流氓。饿了么移动APP的发展也是其业务发展的一面镜子。 在饿了么业务发展的早期,移动APP经历了从无到有的阶段。为了快速上线抢占市场,传统移动APP开发的MVC架构成了“短平快”思路的首选: MVC架构 这种架构因简单清晰,容易开发而被大多数人所接受。 在MVC的体系架构中,Controller层负责整个APP中主要逻辑功能的实现;Model层则负责数据结构的描述以及数据持久化的功能;而View层作为展现层负责渲染整个APP的UI。分工清晰,简洁明了。 此外,这种系统架构在语言框架层就得到了Apple的支持,所以非常适用于APP的startup开发。 然后,这种架构在开发的后期会由于其超高耦合性,造成Controller层庞大,而这也是一直被人们所诟病。最终的MVC都从Model-View-Controller走向了Massive-View-Controller的终点。 2 Module Decoupled “短平快”的MVC架构在早期可以满足饿了么移动APP的快速开发迭代,但是随着代码量的不断增加,臃肿的Controller层也在渐露头角;而业务上,饿了么移动APP也从单一APP发展为多APP齐头并进的格局。这时候,降低耦合,复用已有模块便成了架构的第一要务。 架构中,模块复用的第一要求便是代码的功能组件化

开发百度地图路径移动

余生颓废 提交于 2019-11-26 08:49:33
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <style type="text/css"> body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;font-family:"微软雅黑";} </style> <script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你自己的AK"></script> <title>百度地图利用DrivingRoute做轨迹回放</title> </head> <body> <div id="allmap"></div> </body> </html> <script type="text/javascript"> // 百度地图API功能 var map = new BMap.Map("allmap"); // 创建Map实例 map.centerAndZoom("哈尔滨",15); // 初始化地图