摘要:
随着Android honeycomb的普及,对于Android开发用的平板电脑购买也是十分必要的,到底哪款平板适合开发使用呢?一、硬件方面 CPU最好是主流的NVIDIA Tegra2 A9双核1GHz,RAM为1GB,分辨率为WXGA即1280x800,运行的系统至少为Android 3.0。对于非谷歌官方的Android 2.x系统可以忽略,毕竟很多API是3.0才开始有的。二、选购品牌品牌过硬,最好是一线的大厂,由于和Google合作紧密,得到Android最新版代码和研发效率等因素要好很多,知名品牌的固件升级有保障。 目前摩托罗拉的Xoom已经有Android 3.1固件了,三星G. 阅读全文
posted @ 2012-11-20 23:01
JackyYang7
阅读(568)
评论(0)
推荐(0)
摘要:
很多Android开发者可能觉得仅仅了解Java层还不够,这里Android123结合源码帮助大家如何了解Android Framework层。 首先Android开发网提示大家需要了解哪些前置知识,首先要有C++基础,如果你只会C,可能对于C++ STL标准库,以及模板和泛型的理解会吃力很多,同时要有OOP的思想否则看Android这样的大工程可能无法很好的组织,这点可以通过h文件画出UML图来快速了解整个结构。 1. 首先我们从Android GIT源码托管站点下载Framework层的源码,在base.git包 2. 对于Android来说,Google内部使用C++有些类似STL,因为 阅读全文
posted @ 2012-11-20 23:01
JackyYang7
阅读(342)
评论(0)
推荐(0)
摘要:
在Android平台上做Web上传等操可以考虑对于URL编码尽量做UTF-8的处理,这样空格和中文字符将会被转换,比如空格处理为20%,Android应用可以直接使用Java的URLEncoder.encode(strUrl , "utf-8"); 来处理,比如说String sUrl="http://www.android123.com.cn/中文/";String sDest=URLEncoder.encode(sUrl , "utf-8");执行完后sDest将会返回编码好的URL,同时上传图片可以考虑先处理为Base64编码。 阅读全文
posted @ 2012-11-20 23:00
JackyYang7
阅读(183)
评论(0)
推荐(0)
摘要:
越来越多的Android隐私问题,使得我们考虑如何保护系统安全,对于Android平台的防火墙,可以考虑Rootkit惯用的Hook技术来实现一个简单的防火墙,这样我们可以对敏感的服务,比如说LocationManager、TelephonyManager和SmsManager以及CameraManager等可能产生隐私泄露的行为进行拦截,目前来看在Android上实现这些技术已经不是问题,但Root权限的请求是必须的。由于Android的API相对于其他平台更开放,如果Google推出一套权限的反病毒框架,安全和功能开放上可以做的更有竞争力。 阅读全文
posted @ 2012-11-20 23:00
JackyYang7
阅读(458)
评论(0)
推荐(0)
摘要:
很多网友不明白很多Android山寨平板均使用了480x800的分辨率,但是相对于手机来说明显比手机的480x800的WVGA显示的内容要多和大,这点Android123提示大家还是要从DPI这样的问题入手了,在系统中存在DPI这个概念是依赖于设备的,同时显示系统的density也决定了分辨率,所以一般的7英寸平板电脑显示的480x800分辨率,完全可以放心,远大于你的手机。最简单的方法可以观察山寨平板的桌面图标显示数量或开个浏览器便可知晓。 阅读全文
posted @ 2012-11-20 22:59
JackyYang7
阅读(204)
评论(0)
推荐(0)
摘要:
对于Android应用中涉及到文件下载来说,我们可以使用Java运行库的URL库或Apache的HttpXXX的处理。经过长期的测试JRE中的 URLConnection 的稳定性不是很好,这主要是封装问题底层仍然使用的是Apache的库,而从Android 2.2开始引入的AndroidHttpClient使用的是Apache库的方式下载,在整体稳定性和可靠性方面有了很大的提升,这里Android123推荐大家使用Apache。 一个完善的文件下载类需要更多的HTTP协议通讯,Apache库对于Web提交(上传)或Web下载有着强大的功能,比如说断点需要主要是获取Server上文件的大小,. 阅读全文
posted @ 2012-11-20 22:59
JackyYang7
阅读(204)
评论(0)
推荐(0)
摘要:
很多网友可能发现部分Android手机或平板支持底座,目前比较主流的有摩托罗拉系列,中低端的Milestone和Milestone 2代均可以使用充电底座或多媒体底座,网购大概50元左右。而中高端的Atrix 4G则支持HD或物理键盘底座,在我们连接底座后,一般使用官方固件的Android手机会自动切换到底座的桌钟模式,会显示提前、时间或闹铃等信息,如果通过代码获取底座插拔状态呢? 下面Android123给大家一个简单的思路。 在Androidmanifest.xml文件中,我们在自己应用的主activity中,加入下面的代码<meta-data android:name=" 阅读全文
posted @ 2012-11-20 22:58
JackyYang7
阅读(364)
评论(0)
推荐(0)
摘要:
对于Android平台,很多网友可能考虑开发一个软件商店,对于Android平台上如何实现断点续传操作呢? 这里Android123给大家一些思路和原理的介绍,同时在Android手机上要考虑的一些事情。 1. 流量控制,获取运营商的接入方式,比如说使用移动网络接入,尽可能的提示用户切换WiFi或提示,限制下载的流量以节省话费。 2. 屏幕锁控制,屏幕锁屏后导致应用会被挂起,当然Android提供了PowerManager.WakeLock来控制。 3. 对于断点续传,这要追溯到Http 1.1的特性了,主要是获取文件大小,如果这个无法读取的话,那么就无法断点续传了只能使用chunked模式了 阅读全文
posted @ 2012-11-20 22:58
JackyYang7
阅读(574)
评论(0)
推荐(0)
摘要:
很多网友来函表示对Android AIDL不是很理解,这里Android123准备了一个简单的例子,帮助大家了解Android上比较强大的远程服务设计吧。 一、为什么要使用AIDL,他的优势有哪些呢? AIDL服务更像是 一个Server,可以为多个应用提供服务。由于使用了IDL这样类似COM组件或者说中间语言的设计,可以让后续的开发者无需了解内部,根据暴漏的接口实现相关的操作,AIDL可以工作在独立的进程中。二、学习AIDL服务需要有哪些前置知识? 作为Android上服务的扩展,首先你要了解Android Service模型,Android Serivice我们可以分为两种模式,三个类型, 阅读全文
posted @ 2012-11-20 22:57
JackyYang7
阅读(8000)
评论(0)
推荐(0)
摘要:
对于Android来说除了SDK和NDK外,ADK被称为第三大革命型,Android ADK通过USB为传输方式可以和外设进行通讯,基于Google的Open Accessory Protocol(开放式附件协议) 可以让你的Android设备和车载系统、家电进行通讯,当然ADK还可以让Android设备支持各种常用USB设备,比如扫描仪、打印机、键盘、鼠标等。在Android开源项目GIT官网上已经开设了device/google/accessory/arduino.gitdevice/google/accessory/demokit.git这两个分支,其中demokit为演示包,可以让你轻 阅读全文
posted @ 2012-11-20 22:57
JackyYang7
阅读(431)
评论(0)
推荐(0)
摘要:
相信Android开发者都喜欢用C++编写一些高效的应用,有关Android NDK的C++开发相关知识Android123总结如下: 1. 从Android NDK r5开始支持了STL Port,在这个版本开始就可以使用部分STL库的功能了,比如说vector、string摆脱c下面容易出现的数组未初始化、越界,增强应用的健壮性。 2. 很多网友包含了include <vector> 这样头,但仍然无法编译,这里你首先要检查当前文件是否为.cpp后缀,同时为了使用标准库必须加入 APP_STL := stlport_static 在Application.mk文件中。相关对应还 阅读全文
posted @ 2012-11-20 22:57
JackyYang7
阅读(360)
评论(0)
推荐(0)
摘要:
对于Android平台来说已经有迹象表明开放纯C/C++编写的应用,过去我们也介绍过今天就说下具体的吧,在NDK的Samples中名为native-activity的例子已经证实了这点,不过目前Android123提示大家,显示系统Android上提供的C++接口只有OpenGL了,一起来看看AndroidManifest.xml中的定义吧。不过必须在Android 2.2或更高的固件上才能运行。注意下面的minSDK设置的为8,同时application的android:hasCode=false表示了这个应用将没有Java代码。 <?xml version="1.0&quo 阅读全文
posted @ 2012-11-20 22:56
JackyYang7
阅读(428)
评论(0)
推荐(0)
摘要:
很多Android新手对于JNI开发过程中的疑问不是很清楚,根据android123@163.com邮箱中反馈的内容我们整理如下: 1. JNI中,什么情况才处理jstring、jint、jobject这样的类型,其实通过NDK开发Android C++应用,大部分仍然是常规的cpp和h的标准写法,只有需要和Java层通讯的方法才包含了类似JNIEXPORT void JNICALL XXX这样的函数,大多数的逻辑和标准C/C++没有什么区别。2. 我有一个在Windows上开发好的dll能否在Android上使用呢? 这里Android开发网提醒大家,对于dll这样的PE文件只能在Windo 阅读全文
posted @ 2012-11-20 22:55
JackyYang7
阅读(165)
评论(0)
推荐(0)
摘要:
有关Android NDK开发的相关问题,仍然有不少网友存在问题,下面就常见的问题Android123总结如下: 1. Android 1.5如果调用C++库,都支持哪些方法? 由于Android 1.5 API Level为3,当初提供的类和函数可以在NDK下查看include目录中找到<cstddef>、 <new>、 <utility> 和 <stl_pair.h> 可以看到都是语言运行库和基本的数据类型。2. NDK下的log支持,这里大家可以包含<android/log.h>这个头文件,同时在mk文件中加入LOCAL_LDL 阅读全文
posted @ 2012-11-20 22:55
JackyYang7
阅读(178)
评论(0)
推荐(0)
摘要:
1. 如何让你的应用优先安装到SD卡上? 从Android 2.2 SDK开始多出了一个属性在AndroidManifest.xml中,在manifest节点加入android:installLocation="preferExternal"即可,当然要想让你的应用真正的安装到SD卡上,用户最终的固件为2.2,同时用户选择安装时在SD卡上。一般只有大型游戏或非重要的系统级应用选择安装在SD卡上,SD卡的读写要慢于ROM且更费电,所以重要的应用,比如闹铃提醒是不能设置安装到SD卡的。 2. 如何防止Service被系统回收? 对于Service被系统回收,一般做法是通过提高优 阅读全文
posted @ 2012-11-20 22:54
JackyYang7
阅读(178)
评论(0)
推荐(0)
摘要:
对于很多新手Android应用程序开发出一些不错的UI可能有些难度,这里Android123推荐大家不妨试试更灵活的HTML作为UI,通过html+css+javascript方式,可以灵活开发出各种吸引人的UI,你甚至可以考虑JQuery这样的组件,老外已经写了本名为 《Building Android Apps with HTML, CSS, and JavaScript 》的图书,目前简体中文版仅售28元,可以通过搜索 《使用HTML、CSS和JavaScript开发Android程序》购买到。 如果你是刚入门Android开发,做一些简单有趣的应用,可以尝试下html方式,最大的特点就 阅读全文
posted @ 2012-11-20 22:54
JackyYang7
阅读(177)
评论(0)
推荐(0)
摘要:
对于开发者选择Windows Phone和Android呢? 下面就Android123的对实战开发不同做简单对比: 一、用户界面 Windows Phone的用户界面Metro UI我们算作色块好了,桌面主题无法定制,即使是每个厂商的主题,必须单独运行一个程序,比如HTC Hub。相对于Android来说桌面整个就可以被替换掉,这里分为三部分吧:1. 整个桌面主题 2.顶部滑动的状态栏 3. 桌面appWidget小插件。 Android用户可以放置天气预报、微博、开关WiFi小插件到桌面上,而WP7每次都要进入相应的程序,或进入到系统设置中才能开关WiFi十分繁琐。整体流畅性,Androi 阅读全文
posted @ 2012-11-20 22:49
JackyYang7
阅读(214)
评论(0)
推荐(0)
摘要:
Android SDK目录下有很多文件夹,主要都是干什么的呢? 1. add-ons 这里面保存着附加库,比如Google Maps,当然你如果安装了Ophone SDK,这里也会有一些类库在里面。 2. docs 这里面是Android SDK API参考文档,所有的API都可以在这里查到。 3. market_licensing 作为Android Market版权保护组件,一般发布付费应用到电子市场可以用它来反盗版。 4. platforms 是每个平台的SDK真正的文件,里面会根据API Level划分的SDK版本,这里就以Android 2.2来说,进入后有一个android-8的文 阅读全文
posted @ 2012-11-20 22:49
JackyYang7
阅读(246)
评论(0)
推荐(0)
摘要:
对于Activity状态保存上一次在强制保持Android Activity状态一文中我们做了讲解,但是还有一种更坏的情况,比如你接的来电时间比较长,由于用户的Android设备RAM较少,你的应用被Java VM的GC给回收了,下次用户再切换回,由于你的应用已经被系统结束了任务,对于游戏来说这可能是致命的。 所以通过重写Activity的onSaveInstanceState(Bundle outState) 方法可以在Android系统触发结束任务时,保存当前Activity的值,而下次进入该Activity时,可以通过重写 onRestoreInstanceState(Bundle sa 阅读全文
posted @ 2012-11-20 22:48
JackyYang7
阅读(174)
评论(0)
推荐(0)
摘要:
很多Android开发者对于Activity中如何传递复杂的类型不是很清楚,这里Android123再帮刚入门的开发者整理下。对于传递 一、实现Parcelable接口 对于Android来说传递复杂类型,主要是将自己的类转换为基础的字节数组,Activity之间传递数据是通过Intent实现的,对于二进制数据,传递的参数为putExtra(String name, Parcelable value) ,比如Bitmap类就实现了Parcelable接口,如果需要在Activity中传递图片,可以直接用Bitmap类型,当然如果本身是Drawable你可以先转化为Bitmap,可以参考Bitm 阅读全文
posted @ 2012-11-20 22:48
JackyYang7
阅读(317)
评论(0)
推荐(0)