tag 标签: 应用程序

相关博文
  • 热度 13
    2023-5-12 11:17
    1120 次阅读|
    0 个评论
    如何挑选合适的平板电脑?应用程序效能的比较(Part5)
    判别一台3C产品的效能最直觉的方式就是使用各种性能测试软件,要评估平板电脑的性能和应用程序运行,可利用Benchmark的软件(如3D Mark, AnTuTu或PC Mark等等)跑出分数来判断各种效能的好坏,像是CPU, GPU, Memory, HDD或是Network等等。 图:Benchmark Software 本文百佳泰将介绍5款平板电脑在不同性能测试软件与其表现的结果和差异,透过各种不同项目测试的分数,测试时皆使用各家平板出厂默认的选项不做任何调整,让使用者了解各台平板电脑性能的高低。 3Dmark 首先看大家最熟悉的3Dmark,这套软件主要以显示适配器效能为主,并搭配其它硬件效能分数来评断高低分,其分数表现如下表: 图: 3D Mark的分数效能表现比较图 以结果来看三台Amazon的分数都非常的接近,且高于Walmart约1.6倍,不管在Graphic或是其他硬件的效能都是Amazon表现得比较好。 AnTuTu 接下来看AnTuTu,这套软件主要分CPU、GPU、MEM以及UX的效能分数来评断高低分。 图: AnTuTu的分数效能表现比较 三台Amazon的分数都高于Walmart约1.45倍,以3D Mark软件测试时在Amazon的三台平板间看不出差异,但是在AnTuTu软件下就能辨识落差(譬如CPU的强弱),所以很难用一个测试软件来看出细部的差异,必须藉由不同的测试软件来检视效能好坏。 PCMark for Android 接下来是PCMark for Android,这套是根据Work、Web Browsing、Video Editing、Writing、Photo Editing、Data Manipulation六大类的应用来评断,测试结果如下表: 图: PCMark for Android的分数效能表现比较 实际测试完后,其分数比较未如前面软件所测出的差距大,但仍可看出Amazon平板比Walmart效能略好,与前述的测试结果大致相似。 GFXBench 最后一套软件我们挑选GFXBench,是一款3D图形基准检验软件,主要是使用高画质的游戏场景来测试的整体3D图形性能。测试引擎具有复杂效果,以对GPU施压并就运行游戏或执行其他GPU密集型任务(如UI渲染、导航)时所发挥的3D图形性能提供回馈,测试结果如下表: 图: GFXBench的分数效能表现比较 测试的项目共分15个小项,整体分数也大多是Amazon较高,但是还是有一些项目Walmart比较高分(如ALU 2)。 数据只是一个评分标准,不同的测试软件也会针对各领域有其专业的测试项目,市面上还有其他的测试软件(如Geekbench、NenaMark2、Vellamo Mobile Benchmark、Androbench、CF-Bench等)可以用来测试效能,这次的分享中,百佳泰以大众较常用的软件来提供测试数据,让读者能藉此发掘不同面向在效能实测上的差异。
  • 热度 22
    2013-6-8 16:10
    1009 次阅读|
    0 个评论
           Android 应用程序框架实践培训   一:课程背景:    APK 是AF(Application Framework)和应用开发工程师共同智慧的结晶,APK的运行是AF和应用开发工程师开发的Code相互作用。 本课程依据和Android之父以及Google、三星、HTC中的Android团队合作的经验,力求从设计者的角度带领大家彻底洞悉AF,先从AF的架构和移植讲起,然后详细的以AMS、PMS、WMS的Code细致验证和深度剖析,最后以ANR的彻底剖析结束。 二:这个课程能带给您什么价值? 有Android App开发经验应用软件开发工程师: 第一:解决应用程序频繁出现的疑难杂症,例如ANR、OOM等 第二:应用程序的安装、运行、结束背后的秘密、并以细致的代码剖析来深度探讨; 第三:是从应用开发工程师走向Android架构师最快捷、最实用的的道路; 有经验的Android系统开发人员: 第一:Application Framework内部所有的架构设计秘密揭秘,让你把自己的硬件服务移植进AF如行云流水般畅快; 第二:掌控Android应用程序开发者; 第三:领略最顶级的商业架构思维是如何转化为具体的框架代码的;   中国电子标准协会 http://www.ways.org.cn 三:适合对象:    有至少半年经验的Android应用程序开发,经验越丰富越好;    有Android系统移植经验;    上过王家林Android软硬整合课程或者应用程序开发课程的朋友;   四、培训内容     第一天 第1个主题: Android的哲学思考 1. 造型简单、内涵丰富、无限重复 2. Android的IOC 3. APK与API   第2个主题:Android Application Framework揭秘 1. CS结构:应用框架中的Manager通用的结构 2. Manager与Service一一对应 3. 跨进程通信与AIDL   第3个主题:Android中启动一个新的应用程序揭秘 1. 当我们触摸Android屏幕中Launcher上的一个应用程序的图标的时候到底发生怎样的调用过程? 2. 应用程序的执行入口到底在哪里? 3. 一个新的Android应用程序的进程到底是怎么产生的?   第4个主题:Dalvik VM 1. Dalvik VM的特点,Dalvik VM和JVM的比较 2. Dalvik VM的内存分布及OOM(Out of Memory)的根本原因和解决方案是什么? 3. Preload Classes和 Preload Resources,ClassLoader到底在哪里? 4. Dalvik与Java和C/C++   第5个主题:把Java写的 Service加入到Applciation Framework中 1. IInterface与CTS 2. Binder 3. AIDL 4. Java Service与Manager 5. SystemServer、ServiceManager   第6个主题:Android框架移植移植时的事件驱动机制 1. Android Service是如何应对硬件阻塞的? 2. 开辟新的子线程并不断的poll 3. Listener注册 4. Callback 5. Application Framework中的Handler、Message、Looper、MessageQueue、 6. 事件驱动机制实例   第7个主题:Manager、Service和完整的数据流 1,Manager和Service分离的原则 2,ANR问题 3,阻塞式的操作和非阻塞式操作 4,以实例说明Android中的从最底层到最上层的数据流   第8个主题:ActivityManagerService之AMS总体剖析 1.ActivityManagerService的main函数剖析 2,AMS的 setSystemProcess剖析 3.AMS的 installSystemProviders函数剖析 4.AMS的 systemReady剖析   第9个主题:ActivityManagerService之startActivity剖析 1.ActivityManager 2.AMS的startActivityAndWait函数剖析 3.startActivityLocked剖析   第10个主题:ActivityManagerService之Broadcast和BroadcastReceiver剖析 1.registerReceiver流程剖析 2.sendBroadcast流程剖析 3.BROADCAST_INTENT_MSG消息处理函数 4.应用进程处理广播剖析 第11个主题:ActivityManagerService之startService剖析   1.startService代码剖析 2.startService流程图       时间 內  容 备注 第二天 第1个主题:ActivityManagerService之进程管理 1.Linux和Android中的进程管理 2.AMS进程管理函数剖析   第2个主题:ActivityManagerService之App的 Crash处理 1.应用进程的Crash处理 2.AMS的handleApplicationCrash剖析 3.AppDeathRecipient binderDied剖析   第3个主题:PackageManagerService之main函数剖析 1.构造函数剖析之前期准备工作 2.构造函数剖析之扫描Package 3.构造函数剖析之扫尾工作 第4个主题:PackageManagerService之APK Installation剖析 1.adb install剖析 2.pm剖析 3.installPackageWithVerification函数剖析 4.APK 安装流程 5.Verification介绍   第5个主题:PackageManagerService之queryIntentActivities剖析 1.Intent及IntentFilter介绍 2.Activity信息的管理 3.Intent 匹配查询剖析 4.queryIntentActivities总结   第6个主题:PackageManagerService之installd及UserManager剖析 1. installd剖析 2.UserManager剖析     第7个主题:WindowManagerService之应用程序界面的初始化 1. Android中的窗口 2.应用程序界面初始化的过程   第8个主题:WindowManagerService之窗口管理 1. WindowManagerService.java     WindowState.java     WindowToken.java     AppWindowToken.java     Session.java     InputManager.java     InputMonitor.java 等的分析 2.Activity启动过程中创建窗口的时序   第9个主题:WindowManagerService之WindowManagerImpl剖析 1. addView 2.ViewRoot     第10个主题:WindowManagerService之WindowManagerImpl剖析 1. ViewRoot和WMS的交互 2.WindowState和Surface   第11个主题:彻底洞悉ANR 1. ANR通常出现的场景和常用的解决方案 2.从框架和系统的观点来看:ANR到底是怎么产生的? 3. ANR的终极解决方案是什么?        
  • 热度 18
    2013-6-8 16:07
    849 次阅读|
    0 个评论
           Android 应用程序开发实践培训   在多年的Android(6款硬件产品和超过20款应用软件)及HTML5和Hadoop系列技术的实战背景下制定本课程,课程全程以过去工作的案例为核心,掌握本课程后至少能够轻松编写完成诸如UC迅雷、优酷和KU6等的Android视频客户端、赶集网的移动客户端等,旨在帮助贵公司完成任意负责程度的Android程序开发; 课程目标: 掌握Android应用开发中最常用到的Java技术及其最佳实践 通晓Android的架构哲学和力量来源以及实现技术; 能够开发出任意类型、任意复杂程度的应用程序; 课程要点: Android频繁使用的Java技术实战 揭秘Android; 精通四大组件; 精通Android数据库、文件系统等I/O操作; 精通Android高级界面编程; 精通Android网络编程; 课程要求: 对Android有强烈兴趣,有一定的面向对象语言的开发基础;   中国电子标准协会 http://www.ways.org.cn   时间 内容 需求 第一天 1 , Java 在 Android 开发中的最佳实践( 60 分钟) 1. Java开发金三角:控制器、接口、业务代码; 2. “Don’t call me, I’ll call you back!” 3. UI线程和业务线程; 4. 生命周期控制   2 , Android 中最频繁使用到的 Java 技术( 90 分钟) 1. 继承 2. 面向接口编程 3. 多线程 4.网络编程 5. 反射技术 另附:MVC编程模式 3 , Android 的哲学思考( 20 分钟) 1. 造型简单、内涵丰富、无限重复 2. Android的胜利者 3. Android核心力量源泉 4. Android的IOC容器、解耦 5.Android和iOS的核心区别 4 , Android 框架分析( 20 分钟) 1. Android框架 2. Android设计模式 3. 深入Android的IOC 4.框架的重大意义 5.Android的硬件框架HAL 6.Android各主要版本区别(2.3,3.0, 4.0) 7. 5.Android和iOS的共同点 5 , Android 开发环境搭建和 HelloWorld ( 60 分钟) 1. Java、Eclipse、SDK、NDK、ADT 2. 搭建环境过程中的疑难问题 3.彻底解决没有3G信号的问题 4.开发HelloWorld 5.彻底剖析第一个程序 6.Android应用程序开发的经典模式---MVC模式彻底剖析 7.总结:掌握一个完整的应用程序的开发步骤、注意事项、方法等   6 , Android 发短信、发彩信、打电话( 30 分钟) 1.发短信案例 2.发彩信案例 3,打电话案例 4,总结和思考之一:Android应用程序的设计理念 5,总结和思考之二:Android应用程序的生命周期 7 , Activity 生命周期剖析、应用程序生命周期剖析( 30 分钟) 1.Activity生命周期周期图分析 2.Activity生命周期测试代码 3.Activity嵌套生命周期 4.应用程序生命周期剖析 5.对Android管理应用程序和Activity方式的思考   8 ,不同 Activity 之间的调用和数据传输,关于隐式 Intent 精彩绝伦剖析,关于 setType 的问题已经解决方案显示 Intent 和隐式 Intent 使用场景分析( 30 分钟) 1.startActivity,startActivityForResult,requestCode,resultCode,finish,onActivityResult的彻底剖析 2.关于隐式Intent剖析:动作(Action)、类别(category)、数据data(Uri(Schema,Host,Path)和数据类型(MimeType)) 3.setType()带来的困扰以及最佳解决方案 4.显示Intent和隐式Intent使用场景、使用意义、利弊。 5.对Android中鼓励解耦的实现方式的思考 9 , Handler 、 Looper 、 Message 、 MessageQueue ( 60 分钟) 1. Android的事件驱动模型 2. Looper、MessageQueue、Hanlder、Message等源码深度剖析 3. Looper、MessageQueue、Hanlder、Message及多线程实战案例       第二天 1 , Android 基本 UI 设计与开发技巧( 30 分钟) 1. UI设计理念与开发技巧 2. 菜单实战; 3,Google Map、WebView、Gallery、Spinner、Tab Layout、Grid View、Table layout、Relative layout、Linear layout实战;   2 , ListView 异步加载技术( 30 分钟) 1. 使用ListView异步加载技术的必要性 2. ListView异步加载技术编程实战   3 , ListView 分页加载技术( 30 分钟) 1. 使用ListView分页加载技术的必要性 2. ListView分页加载技术编程实战   4 ,广播接受者 BroadcastReceiver ,短信***案例(接受到短信后上传到服务器或发送到指定的号码或者发送到指定的邮件中)( 50 分钟) 1.剖析广播接收者,与JMS的比较,广播接受者的IoC原理 2.短信监听Android客户端 3.服务器端搭建 4.通过网络把接收到的短信上传到服务器 5.把接收到的短信发送到指定的手机号码或者邮件中 6.BroadcastReceiver的的生命周期和注意事项以及5秒钟生命响应时间的解决方案   5 ,服务 Service ,电话***(每次开机的时候自动开机,电话来时录音并上传到服务器)( 50 分钟) 1.详细剖析Service 2.构建电话监听的Service 3.使用BroadcastReceiver监听开机事件,并在开机时启动电话监听的Service 4.上传音频文件到服务器 5.关于Android安全体系的思考 6 , SharedPreferences 的读写、 SharedPreferences 操作权限、从不同的包中读取参数及源代码剖析( 10 分钟) 1.SharedPreferences的读 2.SharedPreferences的写 3.对SharedPreference操作权限分析 4.读写不同包中的SharedPreference 5.源代码剖析 7 ,单元测试、日志、手机内部文件的形式存储数据及源代码剖析( 10 分钟) 1.单元测试 2.日志 3.对手机的文件进行读写:openFileInput()、openFileOutput() 4.对文件读写的单元测试 5.对四种文件权限模式的测试 6.常用的文件读写API简介 7.剖析源代码   8 , SDCard 读写、代码重构、源代码剖析 1.构建业务层 ( 10 分钟) 2.对业务层的单元测试 3.使用Activity调用业务层对SDCard进行读写 4.提取出帮助类,严格遵循MVC模式对代码进行重构。 5.源代码剖析   9 , SQLite 管理工具类、 CRUD 操作、分页等及源代码剖析( 30 分钟) 1.SQLite简介 2.SQLiteOpenHelper类 3.CURD:execSQL()和rawQuery() 4.分页 5.对getWritableDatabase()和getReadableDatabase()进行源代码分析,剖析其原理 6.执行流程和原理的深入彻底的剖析 7.源代码剖析   10 ,使用 Android 自身提供的 API 进行 CRUD 操作、 ListView 的详细讲解及源代码剖析( 10 分钟) 1.使用Android自带的insert、update、query、delete等进行CRUD操作 2.剖析insert、update、query、delete的源代码 3.对ListView深入详细的剖析,自定义视图,自定义Adapter。 4.剖析Cursor的源代码 5.关于SQLite和Cursor的“_id”问题的剖析和解决方案 7.源代码剖析       第三天 1 , ContentProvider 背景、用途,如何构建 ContentProvider , UriMatcher , ContentUris ,对 CotentProvider 进行单元测试、源代码分析( 60 分钟) 1.ContentProvider背景、用途 2.构建ContentProvider的详细步骤 3.对URI的彻底剖析 4.分析UriMatcher,ContentUris 5.对ContentProvider的业务层代码进行单元测试 6.ContentProvider的源代码剖析 2 ,基于通讯录的开发 ( 30 分钟) 1. 通讯录的数据库和数据表分析 2. 通讯录ContentProvider的源码剖析 3. 获取所有的联系人信息 4.添加联系人 5.如何处理添加通讯录记录时的事物问题          3 ,网络传输的数据格式及其解析(40分钟) 1. XML与JSON 2. JSON解析和生成 3. XML解析和生成 4 ,断点续传(一)类似迅雷的多线程下载器(适用于任何类型的文件下载) ( 90 分钟) 1,多线程下载断点续传原理和流程图 2,下载文件时Http协议协议详解 3,多线程下载断点续传程序:设计服务端和Android端 4,Android端的内容涉及IoC、多线程、SQLite数据库、Handler、Http协议、缓存处理、意外关机时候的处理、编写框架、MVC、Service、Android中的I/O流、代码调试、Activity的生命周期等 5,单元测试 6,软件调试   5 ,断点续传(二)多线程断点文件上传器(适用于任何类型的文件上传) ( 30 分钟) 1,断点续传原理和流程图 2,上传文件的Http协议详解 3,自定义自己的文件传输协议 4,服务端程序的编写:文件的下载与实时数据的记录、监听模式、乱码问题的处理、并发问题、黑客安全问题 5,客户端程序的编写:Android内存溢出问题,Android中的Socket编程、大文件的传输、大文件传输时候的安全问题 6,单元测试 7,软件调试 6 ,Android客户端表单数据的上传 ( 60 分钟)     1,上传基本的数据类型 上传图片等附件 把代码重构为能够上传任意数量的字段和任意数量的附件的工具类 4,思考本地离线存储/在线上传的技术方案 7 , WIFI通讯实战 ( 10 分钟)     1,WIFI通讯特性剖析 WifiManager 、InputStream和OutputStream 3,WIFI应用开发实战 8 ,Android中Java与WebView中Javascript相互沟通 ( 30 分钟)     1,制作Android界面的新大陆 Java调用Javascript 3,Javascript调用Java                  
  • 热度 19
    2010-7-8 11:23
    4698 次阅读|
    1 个评论
    ——作者:In-Stat中国助理分析师 李兵 前些日子看到巴菲特又向盖茨基金会捐出价值16亿美元的股份,到目前为止,巴菲特捐出的股份价值超过80亿美元。每回看到这样的新闻,我就在想,这么多钱,要是换成纸币,得装满多大的屋子啊。对于这些超级富人来说,就算天天挥霍浪费,一辈子可能也花不完,财富在他们眼里仅仅是个数字而已。可是对他们来说,数字大到一定程度以后,还重要吗? 无人能够怀疑iPhone对于智能手机领域传统模式的破坏力,应用程序的数量也是乔布斯津津乐道经常挂在嘴边的。不过话说回来,我认为应用程序上万以后,除了能做一些宣传以外,数字上意义就不大了。30万个应用程序数量和10万个应用程序没什么区别。 一个手机用户一辈子也使不了10万个应用程序。一款新的好玩的应用程序出来,其他较大的平台上一定会有相应程序移植过去,开发者是果,用户需求才是因。用户数量达到一定程度之后,免费就会成为趋势。毕竟对于开发者来说,再好的创意也架不住时间的沉淀。到那时候,消费者购买智能手机的时候又会关注什么呢?看看现在消费者如何选购电脑,或许能够略知一二了。 点击浏览更多 李兵博客文章
  • 热度 26
    2010-7-8 11:22
    1957 次阅读|
    1 个评论
    ——作者:In-Stat中国助理分析师 李兵 前些日子看到巴菲特又向盖茨基金会捐出价值16亿美元的股份,到目前为止,巴菲特捐出的股份价值超过80亿美元。每回看到这样的新闻,我就在想,这么多钱,要是换成纸币,得装满多大的屋子啊。对于这些超级富人来说,就算天天挥霍浪费,一辈子可能也花不完,财富在他们眼里仅仅是个数字而已。可是对他们来说,数字大到一定程度以后,还重要吗? 无人能够怀疑iPhone对于智能手机领域传统模式的破坏力,应用程序的数量也是乔布斯津津乐道经常挂在嘴边的。不过话说回来,我认为应用程序上万以后,除了能做一些宣传以外,数字上意义就不大了。30万个应用程序数量和10万个应用程序没什么区别。 一个手机用户一辈子也使不了10万个应用程序。一款新的好玩的应用程序出来,其他较大的平台上一定会有相应程序移植过去,开发者是果,用户需求才是因。用户数量达到一定程度之后,免费就会成为趋势。毕竟对于开发者来说,再好的创意也架不住时间的沉淀。到那时候,消费者购买智能手机的时候又会关注什么呢?看看现在消费者如何选购电脑,或许能够略知一二了。 点击浏览更多 李兵博客文章
相关资源