移动应用开发

专注于移动应用(游戏)的开发与设计
 
 

常用链接

  • 我的随笔
  • 我的评论
  • 我参与的随笔

留言簿

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔分类

  • C/C++(2) (rss)
  • J2SE&J2EE (rss)
  • Linux&Unix (rss)
  • TCP/IP&SOCKET (rss)
  • Windows&VC (rss)
  • 手机应用开发(6) (rss)

随笔档案

  • 2011年10月 (1)
  • 2009年11月 (1)
  • 2009年8月 (1)
  • 2009年7月 (1)
  • 2009年6月 (1)
  • 2009年5月 (2)
  • 2009年4月 (2)

My Links

  • http://hi.baidu.com/yuankaii
  • WWW.CSDN.NET

搜索

  •  

最新评论

  • 1. re: 关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题
  • 不明白到底是什么,问题怎么解决的呢?楼主不是想要藏私吧?
  • --lijun
  • 2. re: [原创]手机图像简单预处理(J2ME实现)
  • @鞠凯
    什么事情?
  • --kaisne
  • 3. re: [原创]手机图像简单预处理(J2ME实现)
  • LZ还能联系到吗?
  • --鞠凯
  • 4. re: 关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题
  • 像是有Cursor对象忘记调用close()了。
  • --匿名
  • 5. re: 关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题
  • 博主能否告知一下是如何解决这个问题的,我复查过我的代码,但是找不出是什么地方造成了全局引用的超出
  • --zhangrui

阅读排行榜

  • 1. [原创]Android在eclipse下出现Failed to find an AVD compatible with target 'Android 1.5'. Launch aborted.错误(8325)
  • 2. 关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题(5743)
  • 3. 关于ECLIPSE中j2me程序运行时报ALERT: java/lang/ClassFormatError: Bad version information.错误(2526)
  • 4. Symbian学习(一)(933)
  • 5. [原创]手机图像简单预处理(J2ME实现)(670)

评论排行榜

  • 1. [原创]Android在eclipse下出现Failed to find an AVD compatible with target 'Android 1.5'. Launch aborted.错误(8)
  • 2. 关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题(5)
  • 3. 欢迎光临(4)
  • 4. [原创]手机图像简单预处理(J2ME实现)(2)
  • 5. Symbian学习(一)(1)

Powered by: 博客园
模板提供:沪江博客
C++博客 | 首页 | 发新随笔 | 发新文章 | 联系 | 聚合 | 管理

2011年10月10日

正是开始ios开发之旅
今天开始正是进行ios学习和应用开发工作。加油,kaisne!
posted @ 2011-10-10 01:17 kaisne 阅读(417) | 评论 (0) | 编辑 收藏
 

2009年11月4日

Eclipse快捷键大全(转载)
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)
Ctrl+D: 删除当前行 
Ctrl+Alt+↓ 复制当前行到下一行(复制增加)
Ctrl+Alt+↑ 复制当前行到上一行(复制增加)
Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑ 当前行和上面一行交互位置(同上)
Alt+← 前一个编辑的页面
Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)
Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性
Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
Shift+Ctrl+Enter 在当前行插入空行(原理同上条)
Ctrl+Q 定位到最后编辑的地方
Ctrl+L 定位在某行 (对于程序超过100的人就有福音了)
Ctrl+M 最大化当前的Edit或View (再按则反之)
Ctrl+/ 注释当前行,再按则取消注释
Ctrl+O 快速显示 OutLine
Ctrl+T 快速显示当前类的继承结构
Ctrl+W 关闭当前Editer
Ctrl+K 参照选中的Word快速定位到下一个
Ctrl+E 快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
Ctrl+/(小键盘) 折叠当前类中的所有代码
Ctrl+×(小键盘) 展开当前类中的所有代码
Ctrl+Space 代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)
Ctrl+Shift+E 显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)
Ctrl+J 正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutes line中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)
Ctrl+Shift+J 反向增量查找(和上条相同,只不过是从后往前查)
Ctrl+Shift+F4 关闭所有打开的Editer
Ctrl+Shift+X 把当前选中的文本全部变味小写
Ctrl+Shift+Y 把当前选中的文本全部变为小写
Ctrl+Shift+F 格式化当前代码
Ctrl+Shift+P 定位到对于的匹配符(譬如{}) (从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)

下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:一般重构的快捷键都是Alt+Shift开头的了)
Alt+Shift+R 重命名 (是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
Alt+Shift+M 抽取方法 (这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
Alt+Shift+C 修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
Alt+Shift+L 抽取本地变量( 可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
Alt+Shift+F 把Class中的local变量变为field变量 (比较实用的功能)
Alt+Shift+I 合并变量(可能这样说有点不妥Inline)
Alt+Shift+V 移动函数和变量(不怎么常用)
Alt+Shift+Z 重构的后悔药(Undo)

编辑
作用域 功能 快捷键 
全局 查找并替换 Ctrl+F 
文本编辑器 查找上一个 Ctrl+Shift+K 
文本编辑器 查找下一个 Ctrl+K 
全局 撤销 Ctrl+Z 
全局 复制 Ctrl+C 
全局 恢复上一个选择 Alt+Shift+↓ 
全局 剪切 Ctrl+X 
全局 快速修正 Ctrl1+1 
全局 内容辅助 Alt+/ 
全局 全部选中 Ctrl+A 
全局 删除 Delete 
全局 上下文信息 Alt+?
Alt+Shift+?
Ctrl+Shift+Space 
Java编辑器 显示工具提示描述 F2 
Java编辑器 选择封装元素 Alt+Shift+↑ 
Java编辑器 选择上一个元素 Alt+Shift+← 
Java编辑器 选择下一个元素 Alt+Shift+→ 
文本编辑器 增量查找 Ctrl+J 
文本编辑器 增量逆向查找 Ctrl+Shift+J 
全局 粘贴 Ctrl+V 
全局 重做 Ctrl+Y 

 
查看
作用域 功能 快捷键 
全局 放大 Ctrl+= 
全局 缩小 Ctrl+- 

 
窗口
作用域 功能 快捷键 
全局 激活编辑器 F12 
全局 切换编辑器 Ctrl+Shift+W 
全局 上一个编辑器 Ctrl+Shift+F6 
全局 上一个视图 Ctrl+Shift+F7 
全局 上一个透视图 Ctrl+Shift+F8 
全局 下一个编辑器 Ctrl+F6 
全局 下一个视图 Ctrl+F7 
全局 下一个透视图 Ctrl+F8 
文本编辑器 显示标尺上下文菜单 Ctrl+W 
全局 显示视图菜单 Ctrl+F10 
全局 显示系统菜单 Alt+- 

 
导航
作用域 功能 快捷键 
Java编辑器 打开结构 Ctrl+F3 
全局 打开类型 Ctrl+Shift+T 
全局 打开类型层次结构 F4 
全局 打开声明 F3 
全局 打开外部javadoc Shift+F2 
全局 打开资源 Ctrl+Shift+R 
全局 后退历史记录 Alt+← 
全局 前进历史记录 Alt+→ 
全局 上一个 Ctrl+, 
全局 下一个 Ctrl+. 
Java编辑器 显示大纲 Ctrl+O 
全局 在层次结构中打开类型 Ctrl+Shift+H 
全局 转至匹配的括号 Ctrl+Shift+P 
全局 转至上一个编辑位置 Ctrl+Q 
Java编辑器 转至上一个成员 Ctrl+Shift+↑ 
Java编辑器 转至下一个成员 Ctrl+Shift+↓ 
文本编辑器 转至行 Ctrl+L 

 
搜索
作用域 功能 快捷键 
全局 出现在文件中 Ctrl+Shift+U 
全局 打开搜索对话框 Ctrl+H 
全局 工作区中的声明 Ctrl+G 
全局 工作区中的引用 Ctrl+Shift+G 

 
文本编辑
作用域 功能 快捷键 
文本编辑器 改写切换 Insert 
文本编辑器 上滚行 Ctrl+↑ 
文本编辑器 下滚行 Ctrl+↓ 

 
文件
作用域 功能 快捷键 
全局 保存 Ctrl+X 
Ctrl+S 
全局 打印 Ctrl+P 
全局 关闭 Ctrl+F4 
全局 全部保存 Ctrl+Shift+S 
全局 全部关闭 Ctrl+Shift+F4 
全局 属性 Alt+Enter 
全局 新建 Ctrl+N 

 
项目
作用域 功能 快捷键 
全局 全部构建 Ctrl+B 

 
源代码
作用域 功能 快捷键 
Java编辑器 格式化 Ctrl+Shift+F 
Java编辑器 取消注释 Ctrl+" 
Java编辑器 注释 Ctrl+/ 
Java编辑器 添加导入 Ctrl+Shift+M 
Java编辑器 组织导入 Ctrl+Shift+O 
Java编辑器 使用try/catch块来包围 未设置,太常用了,所以在这里列出,建议自己设置。
也可以使用Ctrl+1自动修正。 

 
运行
作用域 功能 快捷键 
全局 单步返回 F7 
全局 单步跳过 F6 
全局 单步跳入 F5 
全局 单步跳入选择 Ctrl+F5 
全局 调试上次启动 F11 
全局 继续 F8 
全局 使用过滤器单步执行 Shift+F5 
全局 添加/去除断点 Ctrl+Shift+B 
全局 显示 Ctrl+D 
全局 运行上次启动 Ctrl+F11 
全局 运行至行 Ctrl+R 
全局 执行 Ctrl+U 

 
重构
作用域 功能 快捷键 
全局 撤销重构 Alt+Shift+Z 
全局 抽取方法 Alt+Shift+M 
全局 抽取局部变量 Alt+Shift+L 
全局 内联 Alt+Shift+I 
全局 移动 Alt+Shift+V 
全局 重命名 Alt+Shift+R 
全局 重做 Alt+Shift+Y
posted @ 2009-11-04 13:33 kaisne 阅读(382) | 评论 (0) | 编辑 收藏
 

2009年8月31日

关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题
     摘要: 关于读取android手机通讯录过程中Excessive JNI global references VM aborting 的问题,日志报错如下:我在读取通讯录的时候遇到的问题:日志如下,读取800多个人的联系方式的时候就出下面的错误。08-30 04:48:33.310: DEBUG/dalvikvm(451): GREF has increased to 200108-30 04:48:33...  阅读全文
posted @ 2009-08-31 11:15 kaisne 阅读(5743) | 评论 (5) | 编辑 收藏
 

2009年7月2日

关于ECLIPSE中j2me程序运行时报ALERT: java/lang/ClassFormatError: Bad version information.错误
        今天在ECLIPSE中写的j2me程序运行时候,报ALERT: java/lang/ClassFormatError: Bad version information.一个错误。开始一直以为是自己的程序问题。后来查了一下才知道,原来是Eclipse中设置版本的编译级别的问题。
       解决方法:
选择eclipse中的"window"->preferences->设置jdk complier compliance leve为1.3或1.4,因为j2me不支持jdk5,6.设置好后就OK了.
posted @ 2009-07-02 11:13 kaisne 阅读(2526) | 评论 (1) | 编辑 收藏
 

2009年6月29日

C/C++位操作技巧 【转载】
  检测一个无符号数是不为2^n-1(^为幂):   x&(x+1)  
    
  将最右侧0位改为1位:   x   |   (x+1)  
    
  二进制补码运算公式:  
  -x   =   ~x   +   1   =   ~(x-1)  
  ~x   =   -x-1    
  -(~x)   =   x+1  
  ~(-x)   =   x-1  
  x+y   =   x   -   ~y   -   1   =   (x|y)+(x&y)    
  x-y   =   x   +   ~y   +   1   =   (x|~y)-(~x&y)    
  x^y   =   (x|y)-(x&y)  
  x|y   =   (x&~y)+y  
  x&y   =   (~x|y)-~x  
    
  x==y:         ~(x-y|y-x)  
  x!=y:         x-y|y-x  
  x<   y:         (x-y)^((x^y)&((x-y)^x))  
  x<=y:         (x|~y)&((x^y)|~(y-x))  
  x<   y:         (~x&y)|((~x|y)&(x-y))//无符号x,y比较  
  x<=y:         (~x|y)&((x^y)|~(y-x))//无符号x,y比较  
    
    
  使用位运算的无分支代码:  
    
  计算绝对值  
  int   abs(   int   x   )    
  {  
  int   y   ;  
  y   =   x   >>   31   ;  
  return   (x^y)-y   ;//or:   (x+y)^y  
  }  
    
  符号函数:sign(x)   =   -1,   x<0;   0,   x   ==   0   ;   1,   x   >   0  
  int   sign(int   x)  
  {  
  return   (x>>31)   |   (unsigned(-x))>>31   ;//x=-2^31时失败(^为幂)  
  }  
    
  三值比较:cmp(x,y)   =   -1,   x<y;   0,   x==y;   1,   x   >   y  
  int   cmp(   int   x,   int   y   )  
  {  
  return   (x>y)-(x-y)   ;  
  }  
    
  doz=x-y,   x>=y;   0,   x<y  
  int   doz(int   x,   int   y   )  
  {  
  int   d   ;  
  d   =   x-y   ;  
  return   d   &   ((~(d^((x^y)&(d^x))))>>31)   ;  
  }  
    
  int   max(int   x,   int   y   )    
  {  
  int   m   ;  
  m   =   (x-y)>>31   ;    
  return   y   &   m   |   x   &   ~m   ;  
  }  
    
  不使用第三方交换x,y:  
  1.x   ^=   y   ;   y   ^=   x   ;   x   ^=   y   ;  
  2.x   =   x+y   ;   y   =   x-y   ;   x   =   x-y   ;  
  3.x   =   x-y   ;   y   =   y+x   ;   x   =   y-x   ;  
  4.x   =   y-x   ;   x   =   y-x   ;   x   =   x+y   ;    
    
  双值交换:x   =   a,   x==b;   b,   x==a//常规编码为x   =   x==a   ?   b   :a   ;  
  1.x   =   a+b-x   ;  
  2.x   =   a^b^x   ;  
    
  下舍入到2的k次方的倍数:  
  1.x   &   ((-1)<<k)  
  2.(((unsigned)x)>>k)<<k  
  上舍入:  
  1.   t   =   (1<<k)-1   ;   x   =   (x+t)&~t   ;  
  2.t   =   (-1)<<k   ;   x   =   (x-t-1)&t   ;  
    
  位计数,统计1位的数量:  
  1.  
  int   pop(unsigned   x)  
  {  
  x   =   x-((x>>1)&0x55555555)   ;  
  x   =   (x&0x33333333)   +   ((x>>2)   &   0x33333333   )   ;  
  x   =   (x+(x>>4))   &   0x0f0f0f0f   ;  
  x   =   x   +   (x>>8)   ;  
  x   =   x   +   (x>>16)   ;  
  return   x   &   0x0000003f   ;  
  }  
  2.  
  int   pop(unsigned   x)   {  
  static   char   table[256]   =   {   0,1,1,2,   1,2,2,3,   ....,   6,7,7,8   }   ;  
  return   table[x&0xff]+table[(x>>8)&0xff]+table[(x>>16)&0xff]+table[(x>>24)]   ;  
  }  
    
  奇偶性计算:  
  x   =   x   ^   (   x>>1   )   ;  
  x   =   x   ^   (   x>>2   )   ;  
  x   =   x   ^   (   x>>4   )   ;  
  x   =   x   ^   (   x>>8   )   ;  
  x   =   x   ^   (   x>>16   )   ;  
  结果中位于x最低位,对无符号x,结果的第i位是原数第i位到最左侧位的奇偶性  
    
    
  位反转:  
  unsigned   rev(unsigned   x)  
  {  
  x   =   (x   &   0x55555555)   <<   1   |   (x>>1)   &   0x55555555   ;  
  x   =   (x   &   0x33333333)   <<   2   |   (x>>2)   &   0x33333333   ;  
  x   =   (x   &   0x0f0f0f0f)   <<   4   |   (x>>4)   &   0x0f0f0f0f   ;  
  x   =   (x<<24)   |   ((x&0xff00)<<8)   |   ((x>>8)   &   0xff00)   |   (x>>24)   ;  
  return   x   ;  
  }  
    
  递增位反转后的数:  
  unsigned   inc_r(unsigned   x)  
  {  
  unsigned   m   =   0x80000000   ;  
  x   ^=   m   ;  
  if(   (int)x   >=   0   )    
  do   {   m   >>=   1   ;   x   ^=   m   ;   }   while(   x   <   m   )   ;  
  return   x   ;  
  }  
    
  混选位:  
  abcd   efgh   ijkl   mnop   ABCD   EFGH   IJKL   MNOP->aAbB   cCdD   eEfF   gGhH   iIjJ   kKlL   mMnN   oOpP  
  unsigned   ps(unsigned   x)  
  {  
  unsigned   t   ;  
  t   =   (x   ^   (x>>8))   &   0x0000ff00;   x   =   x   ^   t   ^   (t<<8)   ;  
  t   =   (x   ^   (x>>4))   &   0x00f000f0;   x   =   x   ^   t   ^   (t<<4)   ;  
  t   =   (x   ^   (x>>2))   &   0x0c0c0c0c;   x   =   x   ^   t   ^   (t<<2)   ;  
  t   =   (x   ^   (x>>1))   &   0x22222222;   x   =   x   ^   t   ^   (t<<1)   ;  
  return   x   ;  
  }  
    
  位压缩:  
  选择并右移字x中对应于掩码m的1位的位,如:compress(abcdefgh,01010101)=0000bdfh  
  compress_left(x,m)操作与此类似,但结果位在左边:   bdfh0000.  
  unsigned   compress(unsigned   x,   unsigned   m)  
  {  
  unsigned   mk,   mp,   mv,   t   ;  
  int   i   ;  
    
  x   &=   m   ;  
  mk   =   ~m   <<   1   ;  
  for(   i   =   0   ;   i   <   5   ;   ++i   )   {  
  mp   =   mk   ^   (   mk   <<   1)   ;  
  mp   ^=   (   mp   <<   2   )   ;  
  mp   ^=   (   mp   <<   4   )   ;  
  mp   ^=   (   mp   <<   8   )   ;  
  mp   ^=   (   mp   <<   16   )   ;  
  mv   =   mp   &   m   ;  
  m   =   m   ^   mv   |   (mv   >>   (1<<i)   )   ;  
  t   =   x   &   mv   ;  
  x     =   x   ^   t   |   (   t   >>   (   1<<i)   )   ;  
  mk   =   mk   &   ~mp   ;  
  }  
  return   x   ;  
  }  
    
    
  位置换:  
  用32个5位数表示从最低位开始的位的目标位置,结果是一个32*5的位矩阵,  
  将该矩阵沿次对角线转置后用5个32位字p[5]存放。  
  SAG(x,m)   =   compress_left(x,m)   |   compress(x,~m)   ;  
  准备工作:  
  void   init(   unsigned   *p   )   {  
  p[1]   =   SAG(   p[1],   p[0]   )   ;  
  p[2]   =   SAG(   SAG(   p[2],   p[0]),   p[1]   )   ;  
  p[3]   =   SAG(   SAG(   SAG(   p[3],   p[0]   ),   p[1]),   p[2]   )   ;  
  p[4]   =   SAG(   SAG(   SAG(   SAG(   p[4],   p[0]   ),   p[1])   ,p[2]),   p[3]   )   ;  
  }  
  实际置换:  
  int   rep(   unsigned   x   )   {  
  x   =   SAG(x,p[0]);  
  x   =   SAG(x,p[1]);  
  x   =   SAG(x,p[2]);  
  x   =   SAG(x,p[3]);  
  x   =   SAG(x,p[4]);  
  return   x   ;  
  }  
    
  二进制码到GRAY码的转换:  
  unsigned   B2G(unsigned   B   )  
  {  
  return   B   ^   (B>>1)   ;  
  }  
  GRAY码到二进制码:  
  unsigned   G2B(unsigned   G)  
  {  
  unsigned   B   ;  
  B   =   G   ^   (G>>1)   ;  
  B   =   G   ^   (G>>2)   ;  
  B   =   G   ^   (G>>4)   ;  
  B   =   G   ^   (G>>8)   ;  
  B   =   G   ^   (G>>16)   ;  
  return   B   ;  
  }  
    
  找出最左0字节的位置:  
  int   zbytel(   unsigned   x   )  
  {  
  static   cahr   table[16]   =   {   4,3,2,2,   1,1,1,1,   0,0,0,0,   0,0,0,0   }   ;  
  unsigned   y   ;  
  y   =   (x&0x7f7f7f7f)   +   0x7f7f7f7f   ;  
  y   =   ~(y|x|0x7f7f7f7f)   ;  
  return   table[y*0x00204081   >>   28]   ;//乘法可用移位和加完成  
  }  



转自:http://www.x-boy.com/trackback.asp?tbID=64
posted @ 2009-06-29 11:50 kaisne 阅读(405) | 评论 (0) | 编辑 收藏
 

2009年5月31日

Symbian学习(一)
     摘要: 今天看看了symbian的活动对象介绍,于是写一个有关活动对象的小程序,该程序是一个GUI程序,在view动态显示当前的时间,使用到的活动对象定义如下: /**//* ============================================================================ Name    ...  阅读全文
posted @ 2009-05-31 02:29 kaisne 阅读(933) | 评论 (1) | 编辑 收藏
 

2009年5月27日

[原创]手机图像简单预处理(J2ME实现)
     摘要: 手机图像简单预处理(J2ME实现) 2009年5月27日星期三最近看到以前的一本数字图像处理书,不禁想用j2me尝试一下简单的数字图像处理在手机上如何实现。于是便有本文。  1package com.yuankai.ImageTest; 2 3import java.io.IOException; 4 5import...  阅读全文
posted @ 2009-05-27 13:31 kaisne 阅读(670) | 评论 (2) | 编辑 收藏
 

2009年4月29日

[原创]Android在eclipse下出现Failed to find an AVD compatible with target 'Android 1.5'. Launch aborted.错误
[原创]eclipse下 Failed to find an AVD compatible with target 'Android 1.5'. Launch aborted.

[2009-04-29 15:06:25 - HelloWorld] ------------------------------
[2009-04-29 15:06:25 - HelloWorld] Android Launch!
[2009-04-29 15:06:25 - HelloWorld] adb is running normally.
[2009-04-29 15:06:25 - HelloWorld] Performing com.yuankai.android.study.HelloAndroid activity launch
[2009-04-29 15:06:25 - HelloWorld] Failed to find an AVD compatible with target 'Android 1.5'. Launch aborted.

网上找了老久,原因是没有创建Android Virtual Device,解决方法是在DOS界面下运行D:\Android SDK\android-sdk-windows-1.5_r1\tools 目录[注:Android SDK安装目录]中android .bat工具,指令是:android create avd --name android15r1 --target 2 (其中“android15r1”自己指定一个别的名字也可以),

 

谷歌上原文是:

Create a new AVD using your selected Deployment Target. Execute:

android create avd --name <your_avd_name> --target <targetID>

 

D:\Android SDK\android-sdk-windows-1.5_r1\tools>android list
Available Android targets:
id: 1
     Name: Android 1.1
     Type: Platform
     API level: 2
     Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id: 2
     Name: Android 1.5
     Type: Platform
     API level: 3
     Skins: HVGA (default), HVGA-L, HVGA-P, QVGA-L, QVGA-P
id: 3
     Name: Google APIs
     Type: Add-On
     Vendor: Google Inc.
     Description: Android + Google APIs
     Based on Android 1.5 (API level 3)
     Libraries:
      * com.google.android.maps (maps.jar)
          API for Google Maps
     Skins: QVGA-P, HVGA-L, HVGA (default), QVGA-L, HVGA-P
Available Android Virtual Devices:

D:\Android SDK\android-sdk-windows-1.5_r1\tools>android create avd --name a
id15r1 --target 2

Android 1.5 is a basic Android platform.
Do you wish to create a custom hardware profile [no]yes

......

.......


Created AVD 'android15r1' based on Android 1.5

D:\Android SDK\android-sdk-windows-1.5_r1\tools>

 

 

这样就创建了一个自己定义的avd(Android Virtual Device),然后在之后就只要在Eclipse的Run Configurations里面指定一个AVD即在Target下选中我们自己定义的这个AVD即android15r1就可以运行了.

这样应该就解决eclipse编译工程时会出错(Failed to find a AVD compatible with target 'Android 1.5'. Launch aborted.)问题啦。不知道上面我说的是否有错,不过大家可以借鉴一下。

posted @ 2009-04-29 21:34 kaisne 阅读(8325) | 评论 (8) | 编辑 收藏
 

2009年4月27日

欢迎光临
欢迎光临,今天刚刚申请来CPP的blog,之前常常在这边看别人的文章,呵呵。
posted @ 2009-04-27 17:21 kaisne 阅读(294) | 评论 (4) | 编辑 收藏
 
仅列出标题