代码改变世界

在Eclipse中的Android项目里实现代码复用

2011-08-28 23:33 by 狼人:-), 263 阅读, 0 推荐, 收藏,
摘要:引言 开发时通常都会有多个项目间代码复用的需求,这时通常的做法是设置项目依赖,让一个项目引用另一个项目,比如在Visual Studio中这样就很容易实现。 而在Eclipse中的Android项目里,如果要引用另一个项目,理论上应该也使用类似的办法: 这里是引用一个名为Core的项目。这样做下来,在编写代码时不会有问题,但是在模拟器中运行时就会出现NoClassDefFoundError异常,原因是找不到引用项目中的类。而通过此窗口中Libraries选项卡中的各种功能添加引用,通常得到的结果要么是编译不通过,要么也是和上面一样。我在网上查了半天,看到很多人也都遇到此问题无解... 阅读全文

Android开发经验分享

2011-08-28 23:33 by 狼人:-), 284 阅读, 0 推荐, 收藏,
摘要:从G1上市到现在,市面上已经出现了至少30款Android手机。为什么至今依然有一些用户在抱怨Android不好用,在相关的开发中,什么才是真正值得关注的,开发的核心是什么?为什么移动应用需要格外关注用户体验?本文将对这些问题尽可能的作出解答。 Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用程序组成,是首个真正为移动终端打造的开放并且完整的移动平台。2008年9月22日,美国运营商T-MobileUSA在纽约正式发布第一款Google手机,即T-MobileG1,从那... 阅读全文

QML基本语法

2011-08-28 23:33 by 狼人:-), 557 阅读, 0 推荐, 收藏,
摘要:QML是什么? QML 是一中声明式语言,用来描述应用程序接口的――是什么样,有怎样的行为。在QML中,一个用户接口被指定为带有属性的对象是。 这个介绍主要面向只有很少或者没有编码经验的人。在QML中,JavaScript作为一种脚本语言被使用。因此在深入学习QML之前,也许你会想要去学一些关于JavaScript的知识(JavaScript: The Definitive Guide)。另外,对像HTML和CSS这样的网页技术有一些基础的了解也是相当有帮助的,但这些都不是必须的。 QML 的基本语法 QML看起来像这样 import Qt 4.7 Rectangle { ... 阅读全文

Android整体印象

2011-08-28 23:33 by 狼人:-), 217 阅读, 0 推荐, 收藏,
摘要:很多人觉得Google能做出Android本身就是一个很了不起的工作过程,真的是这样吗?正好在Android上花过半年时间业余研究,从上到下还算是比较熟了,就说说我的印象吧: 1. 内核 以开发用机G1和Sapphire做例子,内核部分Qualcomm的那部分初始工作最重要(但也称不上大项目),Google的几个mechanism实际上工作量很轻、和类似目的的成熟组件比实际上都是超级简化版,设计的也有不少有欠考虑的地方。 lower memory killer多么简陋就不说了,另一个差劲的设计就是缺乏管理的WakeLock【1】,遍布若干层的这玩意加上我个人最恨的那些没事醒着等... 阅读全文

怎样成为一名Android开发者

2011-08-28 23:33 by 狼人:-), 178 阅读, 0 推荐, 收藏,
摘要:Chris(克里斯)是一位来自波兰的Android应用开发者,作为一名非著名的开发者,他开发的应用在Android Market上免费提供下载,并通过广告获得收入,最近他在自己的博客上面分享了从事Android开发带来的收入情况,并通过自己的经历给予Android开发入门者非常忠实的忠告。作为国内从事Android开发的同行,APP虎第一时间发现并翻译了他的文章,以与广大Android开发者和即将进入Android开发的人们分享。 很多人认为从事Android开发是一件赔本的买卖。他们说,如果你想赚钱,你应该转向iPhone,iPad和所有其他的平台。但事实显然不是这样的,虽然从事An... 阅读全文

运行MeeGo SDK 的windows版本

2011-08-28 23:33 by 狼人:-), 286 阅读, 0 推荐, 收藏,
摘要:系统配置要求: 1. MeeGo SDK 目前只支持 Windows Xp和 Windows 7操作系统。 MeeGo SDK 不保证在Vista下可以工作,并且不提供支持。 2. 仿真器只能在32-bit 版本的windows 下工作。如果你使用的是64位的系统,很抱歉,你将不能使用仿真器。 已知问题及可能的工作环境 1. 目前,仿真器只能用于intel 的cpu 2. 现在只是测试过名为“meego-handset-ia32-w32.1.1”的target文件和meego-handset-ia32-pinetrail-mtf-1.0.90.2.20100914.1-sdk-... 阅读全文

运行MeeGo SDK 的linux版本

2011-08-28 23:33 by 狼人:-), 232 阅读, 0 推荐, 收藏,
摘要:先决条件 你必须需要一个有效的流行Linux发行版(比如: Fedora 13, Ubuntu 10.04LTS, openSUSE 11.3),并运行在一个合适的流行硬件上,比如 32-bit的Intel Atom 或者 Intel双核CPU 如果你打算使用QEMU,你必须确认你的主系统上支持VT.查看 这个网页中的详细步骤,以确认你的系统能力 为了安装必须的组件,你需要以root用户的身份登陆系统 sudo -i 当有提示时,提供你的密码 配置发行包管理器在 Debain或者Ubuntu上 在/etc/apt/sources.list文件下加入以下的文字.你也可以创建... 阅读全文

Android UI之困 横跨四个屏幕的战争

2011-08-28 23:33 by 狼人:-), 171 阅读, 0 推荐, 收藏,
摘要:用户界面(UI)的话题,总是会带来强烈的争论。这有点像电视领域——每个人都是专家,因为每个人都是用户。早在2002年,电信运营商就有一套自己的UI定制界面——例如Vodafone Live 和 Orange SPV。当然,这遭到很 OEM制造商的反对,应为制造商往往希望在产品中突出自己的品牌,而不是运营商的品牌。 OEM制造商的困境 所以3年过去了,OEM 制造商都只是在 Windows Mobile 和 Symbian 手机界面上小幅改动,而不是按照运营商的要求创造一套新 UI。同时,运营商也看到,自己定制 UI 并不能得到期望的回报,所以这事儿就散了。 随着 2007 年 ... 阅读全文

Path – 很漂亮,但走错了路子

2011-08-28 23:33 by 狼人:-), 147 阅读, 0 推荐, 收藏,
摘要:两个前 Facebook 员工的新创意,造了很久势的 Path 终于发布了它的 iOS 应用程序。尽管从截图上看,这跟当初他们公布的创意已经大相径庭,我还是第一时间下载体验,新鲜有趣的应用总是智能手机上的一抹亮彩。 从目前实现的功能来看,Path 是 iOS 上一个类似于 Instagram 的应用,拍摄图片,并在朋友之间共享,不错的界面,但实际把玩一段以后,我认为,这个应用走错了路子。 从一个用户的角度来看,它并不吸引人,甚至犯了不少错误: 1:注册时要求过多的用户信息,令人心存疑虑。 在注册的过程中,这个应用不但要求了常规的 email 跟密码,它甚至还需要你的电话号... 阅读全文

微软“重启”Windows Phone 7 设计的经过

2011-08-28 23:33 by 狼人:-), 353 阅读, 0 推荐, 收藏,
摘要:微软集团副总裁、Windows Phone 项目主管 Joe Belfiore 在位于雷蒙德的微软总部拿着三星的 Windows Phone 7 原型机。 微软员工将 2008 年 11 月称为“重启(The Reset)”。当月,微软终止 Windows 手机项目的全部工作,重新开始。 此举显示出微软已经将自己带进了多么糟糕的境地。接受 Wired.com 采访的员工一致认为这是一件好事。尽管这家软件巨头早在 1996 年就开始开发基于 Windows CE 的手机/PDA 系统,但面对 iPhone、Android Droid 等更加易用的产品,Windows Mobile 系统... 阅读全文

Android 轻松实现语音识别

2011-08-28 23:33 by 狼人:-), 283 阅读, 0 推荐, 收藏,
摘要:苹果的iphone 有语音识别用的是Google 的技术,做为Google 力推的Android 自然会将其核心技术往Android 系统里面植入,并结合google 的云端技术将其发扬光大。 所以Google Voice Recognition在Android 的实现就变得极其轻松。 语音识别,借助于云端技术可以识别用户的语音输入,包括语音控制等技术,下面我们将利用Google 提供的Api 实现这一功能。 功能点为:通过用户语音将用户输入的语音识别出来,并打印在列表上。 功能界面如下: 用户通过点击speak按钮显示界面: 用户说完话后,将提交到云端搜索... 阅读全文

Windows Phone Developer Tools RTW 新特性-Pivot控件

2011-08-28 23:33 by 狼人:-), 235 阅读, 0 推荐, 收藏,
摘要:IE9 Beta发布了,Windows Phone Developer Tools RTW也来了,开发者和发烧友又有得忙活了。园子里好多朋友已经开始了研究,包括马宁、张欣、Jake、randylee、chenkai等等,我也来加入吧。 刚刚安装了Windows Phone Developer Tools RTW,其中UI方面一些新特性,包括Bing Maps Silverlight Control for Windows Phone、Panorama Control for Windows Phone和Pivot Control for Windows Phone。这次就来实践一下Piv... 阅读全文

Android开发必备武器,处理XML的利器——SAX快速上手

2011-08-28 23:33 by 狼人:-), 220 阅读, 0 推荐, 收藏,
摘要:相信各位android开发者,对SAX已经并不陌生了,SAX(Simple API for XML),是一个使用非常广泛的XML解析标准,通常使用Handler模式来处理XML文档,这种处理模式和我们平常习惯的理解方式很不同,身边也经常有一些朋友在刚接触SAX的时候会觉得理解起来有些困难。其实SAX并不复杂,只不过是换了一种思维方式,正如它的名字所表示的,为了让我们以更简单的方式来处理XML文档,下面我们就开始吧。 我们通常的理解方式是,我们给出一个输入(比如xml文档的地址),然后程序返回给我们数据(比如解析后的xml文档结构),我们在返回给我们的结果中进行相应的操作,而SAX以一种更... 阅读全文

Android SurfaceView 绘图覆盖刷新及脏矩形刷新方法

2011-08-28 23:33 by 狼人:-), 370 阅读, 0 推荐, 收藏,
摘要:SurfaceView在Android中用作游戏开发是最适宜的,本文就将演示游戏开发中常用的两种绘图刷新策略在SurfaceView中的实现方法。 首先我们来看一下本例需要用到的两个素材图片: bj.jpg就是一个渐变图,用作背景。 question.png是一个半透明的图像,我们希望将它放在上面,围绕其圆心不断旋转。 实现代码如下: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->package SkyD.SurfaceVi... 阅读全文

在iPhone应用中如何避免内存泄露

2011-08-28 23:33 by 狼人:-), 216 阅读, 0 推荐, 收藏,
摘要:我们曾经对iPhone的内存管理做过比较深入的报道,如何有效控制iPhone内存管理的对象的所有权与引用计数和以及iPhone内存的自动释放与便捷方法。本文我们将介绍在iPhone应用中如何避免内存泄露。想了解“在iPhone应用中如何避免内存泄露”就必须先了解iPhone内存管理的所有权。 关于所有权 所有权是iPhone内存管理的核心思想,对象的所有者负责在使用完对象后进行释放。一个对象可以有多个所有者,当它没有所有者时将被设置为取消分配(deallocation)。 创建对象时,所有权通过alloc、new、或者copy的方式建立,之后通过调用retain或者通过Coco... 阅读全文