代码改变世界

Android常见问题解决方法

2011-05-15 07:55  onm  阅读(220)  评论(0编辑  收藏  举报

以下是我开发Android应用时,遇到的一些诡异或者常见的问题的解决方法。

Eclipse自动更新ADT:

通过Eclipse的自动更新会很慢,基本不能成功。貌似那个自动更新地址被强了,不解。

可以通过这个地址http://dl.google.com/android/ADT-10.0.0.zip下载最新版,然后安装。

安装步骤:

1.Start Eclipse, then select Help > Install New Software....

2.Click Add, in the top-right corner.

3.In the Add Site dialog, click Archive.

4.Browse and select the downloaded zip file.

5.Enter a name for the local update site (e.g., "Android Plugin") in the "Name" field.

6.Click OK.

 

联网问题 

这个真是个令人纠结和诡异的问题。我上网翻遍Google,始终不得解。

后来终于尝试成功,方法如下:

如果通过图形界面启动模拟器,可以勾选wipe user data,重启,屡试不爽。若过使用终端通过命令可以传递相应参数。

 

修改hosts的方法

1.启动模拟器

2.进入sdk的tools目录下,获得root权限:adb root

3.设置/system为可读写:adb remount

4.将hosts文件复制到PC:adb pull /system/etc/hosts <PC机上文件名>

5、修改PC机上文件

6、将PC机上文件复制到手机:adb push <PC机上文件名> /system/etc/hosts

但在第五步时,有的人会报  out of memory的错误

这是因为直接用命令行启动,而没加一个参数造成的,所以用下面这个命令来启动就行了

$emulator –avd youravdname –partition-size 128

 

真机调试

这个也是纠结与诡异,也是Google良久,各种方法各种尝试。

方法:Linux平台,要获得管理员权限,然后,

adb kill-server

adb start-server

就可以了,Ubuntu发行版可以在adb start-server前加sudo来实现。

依然是屡试不爽。

据说Mac下没有这个问题,Windows下要安装驱动解决。

 

真机调试sqlite3

先说虚拟机的方法

首先通过$ adb shell进入远程Shell

然后应用数据库粗放的地址是 /data/data/<package_name>/databases/<数据库名>

比如 # sqlite3 /data/data/com.example.app/databases/mydb.db

这样就启动了sqlite3,然后可以执行一些sql命令了。

关于Sqlite相关内容可以参考《Android学习小结(四)——数据持久SQLite》。

但是真机遇到了问题,提示没有权限,这里我想到了上一条,修改hosts的方法,试了一下,成功!

具体步骤为:

1.进入sdk的tools目录下,获得root权限:adb root

2.设置/system为可读写:adb remount

3.然后同虚拟机方法

 

模拟器太大或者太小

电脑显示器分辨率太小,导致模拟器无法全部显示,可以使用scale参数,缩放模拟器尺寸。