我很惊讶,隐藏功能系列中还没有安装Android 隐藏功能的帖子,我已经跟踪了一段时间了.
隐藏功能系列非常适合对某种语言不熟悉的人.它在一个地方展示了绳索和某些有价值的技巧.我认为这是个好主意.甚至专家有时也会发现他们从未听说过的伎俩.
我正在开始Android开发,我很想知道它隐藏的功能,提示,技巧和陷阱.
那么,这里有:Android的一些隐藏功能是什么?
希望没有太多隐藏的隐藏功能 - 但这里有一些不太知名且非直观的Android功能,这些功能一定会让您的生活更轻松,更好的应用程序.
所有平台的源代码和所有非Google本机应用程序都可供您从Android开源项目中浏览,下载,借用或窃取.
使用资源框架,创建应用程序的本地化版本就像添加一个新的带注释的子文件夹(例如,values-fr)一样简单,该子文件夹包含一个XML文件,其中包含不同语言的字符串(例如法语).Android会在运行时为您选择正确的文件夹.
相同的资源框架允许您通过将它们放在命名文件夹中来为不同的硬件配置,屏幕像素密度和输入设备使用备用布局.
自Android 1.6起,您的应用可以生成结果,该结果将显示在主屏幕快速搜索框搜索的结果中.这称为自定义搜索建议.
使用Intent和Intent过滤器,您的应用程序可以制作和服务匿名请求以完成操作(例如,Where应用程序可以从Open Table应用程序请求表格预订).
他们可以请求未知的应用程序来完成操作,而无需知道哪个应用程序可以满足该请求
您的应用可以满足来自未知应用的请求以完成操作,而无需知道哪些应用会发出请求.正确播放,您可以创建"默认"Twitter应用程序或预订应用程序等.
使用警报,您可以将应用程序设置为在预定时间完成任务,即使您的应用程序未运行.
您可以使用setInexactRepeating方法来节省大量电池寿命,以安排常规事件(如服务器轮询或更新).它将同步多个应用程序的警报同时发生而不是特别发生.
使用" 首选项"框架,您可以使用与系统设置相同的样式为应用程序创建设置屏幕.您甚至可以将系统设置屏幕(例如安全性和位置)合并到应用程序的设置层次结构中.
使用AudioTrack和AudioRecord API,您可以直接从PCM音频缓冲区流式传输音频数据.
将在/ tools目录工具的SDK值得一提:
我们的设计师特别留下深刻印象draw9patch
,帮助设计了可伸缩的按钮.他从那里给了我资产,我从背景颜色改为9-patch drawable,现在我们有一个自定义按钮,圆角等拉伸以适应文本.
ddms
,它也集成到Eclipse插件中.它非常强大,但我用它来截取屏幕截图.
adb
- 从命令行与您的设备或模拟器进行交互.我使用它来跟踪我的设备在桌面上的终端窗口中的日志,但我发现它对于安装和卸载行为不端的应用程序很有用.
sqlite3
- 非常适合与已安装的数据库进行交互,并尝试查询.
apkbuilder
,zipalign
,aapt
-伟大的运行无头构建
monkey
用于模糊测试您的应用.
我还要提出三个设计性能,响应性和无缝性,但我还想为(电池)生活添加第四个编码.
虽然Javadoc中有时可能是有点稀疏,它可以帮助没有尽头有源就在那里给你看.
拥有大量由Google员工编写的示例应用程序来构建,检查并查看它们是如何实现的,这也非常有用.
我想我会从那时开始.
我认为一个很好的隐藏功能是Android文档的最佳实践.它列出了许多设计响应和快速应用程序的好技巧.
最佳实践部分是:
支持多个屏幕(多种尺寸和分辨率)
UI准则
图标设计
应用小工具设计
活动和任务设计
菜单设计
设计性能
设计响应性
无缝设计
另一个隐藏的功能是这些文档可以作为SDK的一部分脱机使用.起初我每天都要加载几页我早上的火车,但是在我在SDK目录中找到它们之后不再需要这样做了.
如果你使用Eclipse,你会注意到它没有很好地格式化XML文件,当它发生时,它是非常不一致的(有时它会按新行分割属性,有时它不会.)要解决此问题,您可以按Ctrl-Shift-F(自动格式化).Ctrl-Shift-F使用的规则在Window-> Preferences-> XML-> XML Files-> Editor中.
Android支持XML
,可以用作类似SVG的drawable.不幸的是没有他们的文档.这是我能找到的最好的信息:
http://escomic.net/217
另外,关于最佳做法,您可能需要查看Android编码风格:
http://source.android.com/source/code-style.html
以及在Eclipse/ide/eclipse下的平台源代码中找到的eclipse代码和导入格式化程序(android-formatting.xml,android.importorder)
/ tools中的hierarchyviewer允许您调试/分析视图布局:填充,定位,视图层次结构等.
在试图弄清楚为什么事情按照它们的方式布局时,它为我节省了很多时间.