移动开发

20189210 移动平台开发第十二周作业

本秂侑毒 提交于 2019-12-20 04:07:56
第47章服务 服务(service)是一种Android组件。服务没有用户界面,并且在后台运行。它适用于长时间运行的操作。 服务和在其中声明服务的应用程序在相同的进程上运行,并且在应用程序的主线程上运行。 服务可以采取两种形式之一,它可以是启动的或绑定的。 如果一个组件启动了服务,它就是启动的。即便启动服务的组件已经不再接受服务或者被销毁了,该服务还可以在后台无限期地运行。 如果应用程序组件绑定到服务,该服务就是绑定的。绑定的服务就像是客户端-服务器关系中的一台服务器,接受来自其他应用程序组件的请求,并且返回结果。 术语可访问性(accessibility),表示一个服务可以是私有的或公有的。公有的服务器可以由任何的应用程序调用,私有的服务器只能够由服务声明所在的相同的应用程序之中的组件来访问。 服务必须在清单中的之下使用service元素来声明。 第48章广播接收器 Android系统总是会将在操作系统和应用程序运行期间发生的意图进行广播。此外,应用程序也可以广播用户定义的意图,可以通过在应用程序中编写广播接收器来利用这些广播。 广播接收器是一个应用程序组件,它监听一个特定意图广播,类似于监听事件的Java监听器。 基于时钟的广播接收器 第49章 闹钟服务 相关方法: set(int type,long startTime,PendingIntent pi):一次性闹钟

移动端开发之APP消息推送

放肆的年华 提交于 2019-12-18 13:05:44
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 有这样一种场景,当你在手机APP上输入你的信息,会自动跳出一个弹窗,表示某任务已执行。最简单的一个例子就是当你输入手机号,点击获取验证码的时候,就会跳出一个对话框,说“验证码已发送到手机,请注意查收”,这些都是如何实现的。 就以我参与开发的一款移动报表FineReport为例,讲解一下如何开发手动推送APP消息。 这个APP里有这样一个应用,它是可以实现在客户端填报录入数据,然后数据上传到数据库中的这样一个功能,也就是所谓的移动化办公,这在企业办公方面用得比较多。当数据录入系统成功后,会自动发送消息至APP提示数据已更新。 此功能的实现就是在数据录入成功的事件中添加js,使用ajax发送消息请求 FR.ajax({ url: ' http://192.168.1.120:8033/WebReport/ReportServer?cmd=send_messages&op=fs_mobile_main ', type: 'POST', data: {user:'sunlin', text:'填报成功,模板A有数据更新',url:' http://192.168.1.120:8033/WebReport/ReportServer?reportlet=app.cpt&op=write',title:'app '},

10个常见的Android新手误区

旧城冷巷雨未停 提交于 2019-12-17 18:43:13
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 1 、不读 Android 开发文档 Android 开发者网站 可以很好的帮助你。很多的文档也可以通过 SDK 工具下载。这些文档不仅仅是 Javadoc API 的参考,它包括许多指南、教程、视频、培训以及其他有用的资料来创建 Android 应用程序。 Android 训练 ,通过一些有用的教程示例,指导你解决特定问题或实现特定的功能。 2 、不熟悉 Android 开发工具 Android SDK不仅可以用来编译打包你的应用程序在 Android 手机上运行,而且它有一整套工具来帮助你构建应用程序。其中一些工具可以帮助你的应用程序设计图形和布局。其他命令行工具,它们提供简单、可编写脚本访问模拟器和硬件设备的功能。还有一些可以帮助你进行性能的调优和剖析。 Android SDK 文档 中更多关于 Android 工具的信息。 3 、不从 Android 开发社区寻求帮助 Android开发社区大型且友好。当你有问题时, Android SDK 文档不会回答你,我们建议你去 StackOverflow.com ,它有一个 Android 开发 特定标签。其他有用的资源包括 谷歌邮件列表 以及网站教程,比如你会发现在 Android 软件开发中心 。 4 、由于 Java 语言开发而变得懒惰

移动端报表JS开发技术分享

烂漫一生 提交于 2019-12-16 20:00:02
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 最近对移动端的报表开发颇有研究,细磨精算了好久,虽然到现在还是“囊中羞涩”,但决定还是先抛砖引玉,拿点小干货出来和大家分享。 研究的工具是比较有代表性的FineReport。 1、 移动端哪些地方支持调用js web事件 分页预览 填报预览 加载结束事件 √ X 填报成功事件 -- √ 报表内部js 单元格 图表 超级链接js √ √ 控件事件 参数控件 填报控件 表单控件 初始化后事件 √ √ X 编辑前 √ √ X 编辑后 √ √ X 编辑结束 √ √ X 点击 √ √ X 状态改变 √ √ √ ‍ 2、 报表控件支持的脚本函数 ‍ 函数名 函数描述 填报控件 参数控件 表单控件 setEnable 设置控件的可用性 √ √ √ isEnable 判断控件是否可用 √ √ √ setVisible 设置控件的可见性 √ √ √ isVisible 判断控件的可见性 √ √ √ setValue 设置控件值 √ √ √ getValue 获取控件的值 √ √ √ setText 设置控件的显示值 √ √ √ getText 获取控件的显示值 √ √ √ reset 重置控件 √ √ √ fireEvent 触发指定名字的事件 √ √ √ ‍ 3、 报表分页预览支持的脚本函数 ‍ 函数名 函数描述 补充说明

移动开发中跨平台技术对比

别等时光非礼了梦想. 提交于 2019-12-16 00:00:28
近几年,随着物联网时代到来、移动互联网高歌猛进,日新月异,在很多业务场景中,纯原生开发主要面临动态化和开发成本两个问题,而针对这两个问题,诞生了一些跨平台(特指Android和iOS两个平台)的动态化框架。 跨平台技术对比 技术类型 UI渲染方式 性能 开发效率 动态化 框架代表 H5+原生 WebView渲染 一般 高 支持 Cordova、Ionic js+原生渲染 原生控件渲染 好 中 支持 RN、Weex、uni-app 自绘UI+原生 调用系统API渲染 好 Flutter高, QT低 默认不支持 QT、Flutter 上表中开发语言主要指UI的开发语言。 而开发效率,是指整个开发周期的效率,包括编码时间、调试时间、以及排错、兼容时间。 动态化主要指是否支持动态下发代码和是否支持热更新。值得注意的是Flutter的Release包默认是使用Dart AOT模式编译的,所以不支持动态化,但Dart还有JIT或snapshot运行方式,这些模式都是支持动态化的。 拓展阅读 《移动应用开发常见技术比较》https://www.jianshu.com/p/fc0fea667243 《2019年,Flutter 和 React Native 谁主沉浮?》https://www.ucloud.cn/yun/104638.html 原文: https://xushanxiang.com

Vue经典开源项目汇总

核能气质少年 提交于 2019-12-15 16:11:36
Vue.js(读音 /vjuː/, 类似于 view)是一套用于构建用户界面的渐进式框架,主要用于快速的构建前端界面,与其它大型的前端框架不同,Vue被设计为可以自底向上逐层应用。 相比Angular.js来说,Vue的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合,是初创项目的前端首选框架。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue也完全能够为复杂的单页应用提供驱动。 正式因为Vue.js具有易用、灵活、高性能和渐进式等特点, 才使得Vue.js成为当前三大流行的JavaScript 框架之一。 工欲善其事,必先利其器。Vue的快速发展和崛起也得益于其快速发展的社区环境。为了实现快速的迭代,Vue社区涌现出了一大批的开源项目,借助这些开源项目,我们可以实现快速的迭代升级。 UI组件 element ★34,784 - 饿了么出品的基于Vue2的web UI工具套件 storybook ★33,503 - 响应式UI 开发及测试环境 Vux ★15,061 - 基于Vue和WeUI的组件库 mint-ui ★13,381 - Vue 2的移动UI元素 iview ★19,629 - 基于 Vuejs 的开源 UI 组件库 Keen-UI ★3,615 - 轻量级的UI组件合集 vue-material ★7,542 -

移动APP测试浅析

此生再无相见时 提交于 2019-12-14 21:15:43
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、移动APP测试的现状及挑战 移动互联网走到今天,App寡头化的趋势已经越来越明显,同时用户的口味越来越高,这对移动App开发者提出了更高的要求。几年前可能你有一个创意,随便做一个App,就算功能简单,Bug很多,也会有不少用户会使用,因为当时的选择少。而现在,如果App的质量不过关,体验不好,还经常崩溃闪退的话,会被好不容易获得的用户立刻卸载掉。这就要求开发者对于App的测试越来越重视. App的测试和传统测试相比,面临更多挑战: App迭代速度快,测试时间少。 现在的App迭代速度非常快,通常一个月一个大版本,两周一个小版本,而开发人员水平参差不齐,基本上都是临近发布前才能提供可测试的版本,给测试人员留出的时间非常有限,这就直接导致了测试人员可能无法对App进行全面的测试,根本无法保证App的质量,所以我们经常看到很多App带着Bug就上线了。 App测试的准确性和问题追踪难以保证。 据统计,由于缺乏真实环境下的用户场景,App测试遗漏环节高达20-50%。由于测试人员本身不专业,同时缺乏通用的App测试工具,导致很多App发生了崩溃严重问题时,测试人员很难提供给开发人员精准的崩溃日志,让开发者无法精确定位问题和分析问题。 手机机型分裂越来越严重,App兼容问题突出。 目前安卓机型有几千款之多

移动web开发_flex布局

荒凉一梦 提交于 2019-12-14 00:48:44
移动web开发——flex布局 1.0传统布局和flex布局对比 1.1传统布局 兼容性好 布局繁琐 局限性,不能再移动端很好的布局 1.2 flex布局 操作方便,布局极其简单,移动端使用比较广泛 pc端浏览器支持情况比较差 IE11或更低版本不支持flex或仅支持部分 1.3 建议 如果是pc端页面布局,还是采用传统方式 如果是移动端或者是不考虑兼容的pc则采用flex 2.0 flex布局原理 flex 是 flexible Box 的缩写,意为"弹性布局",用来为盒状模型提供最大的灵活性,任何一个容器都可以指定为 flex 布局。 当我们为父盒子设为 flex 布局以后,子元素的 float、clear 和 vertical-align 属性将失效。 flex布局又叫伸缩布局 、弹性布局 、伸缩盒布局 、弹性盒布局 采用 Flex 布局的元素,称为 Flex 容器(flex container),简称"容器"。它的所有子元素自动成为容器成员,称为 Flex 项目(flex item),简称"项目"。 总结 :就是通过给父盒子添加flex属性,来控制子盒子的位置和排列方式 3.0 父项常见属性 flex-direction:设置主轴的方向 justify-content:设置主轴上的子元素排列方式 flex-wrap:设置子元素是否换行 align-content

iOS和Android开发:你需要知道的5件事

元气小坏坏 提交于 2019-12-13 18:42:48
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 当谈到为你的移动应用或游戏选择目标平台时,仍是有两个主要的选择。自智能手机引入以来,iOS和Android主导了移动设备,并且这种情况没有很快会改变的迹象。那么这几个平台真正的区别是什么呢? 1. 设备 屏幕大小和分辨率 一开始显而易见的是你会开发什么样的设备。重要的是要考虑与应用程序交互时用户使用的设备。这会有许多设计因素的影响。屏幕尺寸和分辨率就是当选择一个平台时你需要考虑的主要因素之一。 如果你选择开发iOS应用程序,屏幕尺寸和分辨率在你的开发过程中会扮演一个小角色。苹果基于iPad和iPhone的设计生产设备的有限范围。你很容易熟悉这些设备。 而对于Android开发人员来说,情况要复杂得多。有越来越多的制造商制造Android操作系统的设备。他们有各种不同的形状和大小。 在iOS和Android中做选择意味着决定了你将以何种方法挑战不同的屏幕尺寸。如果你想要简单的选项,那么iOS开发是一个安全的赌注。如果你能克服使应用程序工作在多种设备上的障碍,那么安卓开发也是一种选择。 注意: 当然,开发你的应用或V-Play的游戏意味着你的应用将在任何尺寸和分辨率的设备上工作。我们已经找到了一个可以简化这个问题的方法,让你可以专注于你的应用或游戏的更重要的方面。你可以看看我们的文档来找出V

Weex详解:灵活的移动端高性能动态化方案

此生再无相见时 提交于 2019-12-10 20:54:42
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在2016年4月份的QCon上,阿里巴巴资深总监,淘宝移动平台及新业务事业部、阿里百川负责人庄卓然(花名南天)宣布阿里移动端跨平台开发框架Weex开始内测,并将于6月份开源。在QCon的第二天,阿里技术专家徐凯(花名鬼道)和阿里前端开发专家赵锦江(花名勾股)向参会者做了《Weex——灵活的移动端高性能动态化方案》的演讲,对这一技术方案进行了详细的剖析。 以下为演讲内容的整理: 昨天南天宣布Weex启动开源内测,截至到今天中午,我们统计申请内测用户突破1400人,大家的热烈程度远远超过我们的设想,非常感谢大家支持。 在我们对移动开发最佳实践的思考中,我们认为移动开发的未来是更平衡的方案,一定是性能和动态性兼得。第二个,它一定是开放互联的,PC端一直也是这样的,也是非常好的状态。我们觉得移动互联网将来肯定也是基于更大众化的技术体系,没有平台之间的隔阂,简单直接易用,这是我们最希望看到的。基于这些设想,我们有了Weex方案。 Weex是从去年双十一的时候第一次在我们正式产品中使用,承载了双十一主会场的工作。有人会问,Weex是不是除了做主会场别的地方就比较吃力呢?从去年双十一到现在,包括我们自己的尝试和阿里内网做开源内测活动,大家也贡献了很多内容,包括昨天Keynote演示的僵尸动画,扫雷、计算器都有