﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-life02-随笔分类-android模拟器学习</title><link>http://www.cppblog.com/life02/category/18323.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 31 Dec 2011 09:51:35 GMT</lastBuildDate><pubDate>Sat, 31 Dec 2011 09:51:35 GMT</pubDate><ttl>60</ttl><item><title>android 牛人必修 ant 编译android工程</title><link>http://www.cppblog.com/life02/archive/2011/12/25/162806.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Sun, 25 Dec 2011 15:17:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/25/162806.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/162806.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/25/162806.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/162806.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/162806.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.cppblog.com/life02/archive/2011/12/25/162806.html'>阅读全文</a><img src ="http://www.cppblog.com/life02/aggbug/162806.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-25 23:17 <a href="http://www.cppblog.com/life02/archive/2011/12/25/162806.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用命令行创建和启动Android模拟器 （转）</title><link>http://www.cppblog.com/life02/archive/2011/12/06/161567.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Tue, 06 Dec 2011 03:30:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/06/161567.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/161567.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/06/161567.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/161567.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/161567.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.cppblog.com/life02/archive/2011/12/06/161567.html'>阅读全文</a><img src ="http://www.cppblog.com/life02/aggbug/161567.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-06 11:30 <a href="http://www.cppblog.com/life02/archive/2011/12/06/161567.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>模拟器常用小技巧</title><link>http://www.cppblog.com/life02/archive/2011/12/06/161563.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Tue, 06 Dec 2011 03:13:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/06/161563.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/161563.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/06/161563.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/161563.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/161563.html</trackback:ping><description><![CDATA[<p>google上面下载Android的SDK或者OPhonesdn 下载 Ophonesdk，解压出来后在SDK的根目录下有一个tools文件夹，双击emulator.exe，直接启动模拟器<br /><br />1.模拟器外观的定制：<br />480x320, landscape: emulator -skin HVGA-L<br />320x480, portrait : emulator -skin HVGA-P (default)<br />320x240, landscape: emulator -skin QVGA-L<br />240x320, portrait : emulator -skin QVGA-P<br />2.为模拟器加上SD卡：<br />emulator -sdcard D:\sdcard.img<br />下面我们再来说说如何创建"sdcard.img"文件：<br />&#8220;tools&#8221;目录下还有另外一个很好用的工具&#8220;mksdcard.exe&#8221;，一看名字就知道&#8212;&#8212;make sdcard。对，就用它来创建一个&#8220;SD卡&#8221;。<br />命令为：<br />mksdcard 512M D:\sdcard.img<br />OK,这样一个容量为512M的SD卡就创建完毕了。<br />使用SDCard:<br />创建: mksdcard &lt;512M&gt; <sdcard img=""><br />(bytes(default)，K，M)<br />连接到模拟器: emulator -sdcard &lt;目录/sdcard.img&gt;<br />传文件到SDCard: adb push &lt;目录/myaudio.mp3&gt; 3、模拟器的通信<br />GPhone的模拟器有个特有的号码：15555218135，这个就类似我们实体手机的SIM卡号码啦。</sdcard></p>
<p>&nbsp;</p><br /><br />正确启动模拟器[SDK 1.5]<br />安装好JDK后，运行框中输入cmd，回车后就会弹出个黑框。（接下来的大部分操作都是在这黑框下进行的）在黑框中输入cd /d D:/ android-sdk-windows-1.5/tools/ <br />(这个路径是我存放模拟器的路径、大家要根据自己所存放的路径输入相应的路径)<br />输入完正确的命令后就会自动弹出你所存放模拟器的路径（如上图）<br />接着在这命令后面输入android并回车，这时黑框中会弹出一堆的命令，看不懂也没关系！我们滚动黑框见到最后一个命令的位置就好<br />在最后的这个命名后面输入android create avd -t 2 -n g1，并回车。『注意：这个命令中最后一个g1是可以任意取名的，你可以写g2、android、gphone???之类的』<br />【大家在操作这步的时候，要切记android与create与avd与-t与2与-n与g1之间都是有空格的 】<br />这时又会弹出个新的命令出来！我们只要输入no并回车就可以了<br />结束以上的操作之后，打开存放SDK模拟器的文件，找到模拟器的程序右键点击发送&#8212;&#8212;桌面快捷方式<br />回到桌面后，发现双击那个小绿人发现还是打不开模拟器！先不要着急、右键点击属性！在快捷方式-目标的路径后面加上 -avd g1<br />再次注意：这个-前面是要空格一下的，avd后面跟着的g1则要跟你在上一步黑框中所输入的名字是一致的 <div><embed id="lingoes_plugin_object" type="application/lingoes-npruntime-capture-word-plugin" height="0" hidden="true" width="0"></div><img src ="http://www.cppblog.com/life02/aggbug/161563.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-06 11:13 <a href="http://www.cppblog.com/life02/archive/2011/12/06/161563.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>adb 学习</title><link>http://www.cppblog.com/life02/archive/2011/12/05/161523.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Mon, 05 Dec 2011 12:01:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/05/161523.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/161523.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/05/161523.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/161523.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/161523.html</trackback:ping><description><![CDATA[<div><div id="article_content">     <p entry-title="">在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb，adb的全称为Android Debug Bridge就是调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序，说白了就是debug工具。<br /><br />adb的工作方式比较特殊采用Socket TCP 5554等端口的方式让IDE和Qemu通讯，默认情況下adb会daemon相关的网络端口，所以当我们运行Eclipse时adb进程就会自动运行。<br /><br />1.通过adb可以轻松地执行Linux Shell命令，进入设备或模拟器的shell：<span style="color: #33ccff">adb shell</span>就可以进入模拟器<span style="color: #33ccff">的shell环境中</span>。也可以执行各种Linux的命令，其命令格式為：adb shell command<br />例如:<br /><span style="color: #33ccff">adb shell dir</span> 就是列举目录，在Linux中根目录为/而不是Windows上的C盘,D盘.<br /><span style="color: #33ccff">adb shell dmesg <span style="color: #000000;">会印出</span></span>Linux的debug信息。<br />2.<span style="color: #ff0000">安装apk程序到模拟器 </span></p> <div entry-content=""><span style="color: #ff0000"><span style="color: #000000;">则执行</span></span><span style="color: #33ccff">adb install android123.apk</span>，这样名为android123的安裝包就会安裝到Android模拟器中，前提是android123.apk文件需要放到SDK/Tools目录下。<br />3.<span style="color: #ff0000">向emulator传送文件</span></div> <div entry-content="">使用<span style="color: #33ccff">adb push android123.txt /tmp/android123.txt</span>命令可以把SDK/Tools下的android123.txt文件传送到模拟器的/tmp/文件夾中，需要注意的是<span style="color: #000000;">/tmp/</span>文件夾中內容会在Android<span style="color: #66ff99"><span style="color: #000000;">模拟器</span><span style="color: #000000;">重</span></span><span style="color: #000000;">新啟動時清空</span>。<br />4.<span style="color: #ff0000">从Android模拟器中回传文件到电脑</span></div> <div entry-content=""><span style="color: #33ccff"><span style="color: #000000;">通过</span>adb pull /tmp/android123.txt android123.txt</span>命令就會把模拟器的tmp文件夾下android123.txt文件回传到电脑SDK/Tools目录下。<br /><br />继续android adb命令相关介紹，除了可以方便的安裝apk文件、pc和Android模拟器互传资料外还有Android Debug Bridge一些辅助的功能。<br />1.如果在Eclipse中发现有* daemon not running. starting it now *的提示可以结束adb<br /><span style="color: #33ccff">adb kill-server</span><br /><br />2.显示android模拟器状态</div> <div entry-content="">adb devices 端口号等信息，执行后会现实TCP端口号<br /><span style="color: #33ccff">adb get-product</span> 获取设备型号</div> <div entry-content=""><span style="color: #33ccff">adb get-serialno</span> 获取序列号</div> <div entry-content=""><br />3.等待正在运行的设备</div> <div entry-content=""><span style="color: #33ccff">adb wait-for-device<br /></span><br />4.端口转发<span style="color: #33ccff">adb forward adb forward tcp:5555 tcp:1234</span> 实现将默认的TCP 5555端口转发到1234端口上<br /><br />5.查看bug報告<br /><span style="color: #33ccff">adb bugreport</span></div> </div></div><br /> <div><embed id="lingoes_plugin_object" type="application/lingoes-npruntime-capture-word-plugin" height="0" hidden="true" width="0"></div><img src ="http://www.cppblog.com/life02/aggbug/161523.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-05 20:01 <a href="http://www.cppblog.com/life02/archive/2011/12/05/161523.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>adb 指令</title><link>http://www.cppblog.com/life02/archive/2011/12/05/161521.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Mon, 05 Dec 2011 11:54:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/05/161521.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/161521.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/05/161521.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/161521.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/161521.html</trackback:ping><description><![CDATA[<div>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;"><img src="file:///C:/DOCUME%7E1/ADMINI%7E1/LOCALS%7E1/Temp/msohtml1/01/clip_image001.gif" alt="" height="17" width="16" /></span></p>  <p style="text-align:left;" align="left"><strong><span style="font-size:24.0pt;font-family:宋体;"><a href="http://note.ajneok.org/programing_note/android/android-emulator-command-note/" title="Android Emulator 備忘指令 的永久連結">Android Emulator <span>備忘指令</span></a> </span></strong></p>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;">發表於 一月 8, 2011 在 <a href="http://note.ajneok.org/category/programing_note/android/" title="查看 Android 分類的全部文章">Android</a> 分類. <a href="http://note.ajneok.org/programing_note/android/android-emulator-command-note/#comments" title="Android Emulator 備忘指令 的相關迴響">10 <span><span>則評論</span></span></a> </span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;      font-family:宋体;">Android </span><span style="font-size:12.0pt;font-family:宋体;">模擬器命令列啟動模式</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt; font-family:宋体;color:blue;">在 android-sdk-windows-1.1\tools 執行 emulator 以執行模擬器<span><br /> </span>加上-skin參數，指定顯示模式為 HVGA-L，則可轉為橫向</span><span style="font-size:12.0pt;font-family:宋体; color:red;"><br /> emulator &#8211; skin HVGA-L (480*320</span><span style="font-size:12.0pt;font-family: 宋体;color:red;">，水平顯示<span>)<br /> emulator &#8211; skin HVGA-L (320*480</span>，垂直顯示，模擬器預設模式<span>)<br /> emulator &#8211; skin HVGA-L (320*240</span>，水平顯示<span>)<br /> emulator &#8211; skin HVGA-L (240*320</span>，垂直顯示)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">使用<span> mksdcard      </span>指令模擬 1GB 的記憶卡</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">mksdcard 1024M sacard.img</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">模擬插入 SD 卡的模擬器</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">emulator &#8211; sdcard sdcard.img</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">使用<span> adb+push      </span>上載檔案到 SD 記憶卡</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">adb push 001.jpg /sdcard (</span><span style="font-size: 12.0pt;font-family:宋体;color:red;">複製檔案到 /sdcard 目錄下<span>)<br /> adb push pictures /sdcard (</span>複製 picture 照片目錄到 /sdcard 目錄下<span>)<br /> adb push mp3 /sdcard (</span>複製 mp3 音樂目錄到 /sdcard 目錄下<span>)<br /> adb shell (Android </span>模擬器啟動命令列模式<span>)<br /> #cd /sdcard (</span>進入 /sdcard 目錄<span>)<br /> #ls (</span>查看 SD 記憶卡中的檔案)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">使用<span> adb+pull      </span>從 SD 記憶卡下載檔案</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">adb pull /sdcard/001.jpg . (</span><span style="font-size:12.0pt;font-family:宋体;color:red;">下載 /sdcard 目錄下的檔案<span>)<br /> adb pull /sdcard/pictures . (</span>下載 sdcard 目錄下的 pictures 目錄)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">刪除 SD 卡裡面的檔案</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">adb shell<br /> #ced /sdcard<br /> #rm 001.jpg (</span><span style="font-size:12.0pt;font-family:宋体;color:red;">刪除 SD 記憶卡裡的檔案<span>)<br /> #rm -r * (</span>刪除 SD 記憶卡裡所有檔案與目錄)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;      font-family:宋体;">Android</span><span style="font-size:12.0pt;font-family:宋体;">模擬器影片播放方法</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">mksdcard 4096M video.img (</span><span style="font-size: 12.0pt;font-family:宋体;color:red;">製作一個影像檔的 SD 記憶卡<span>)<br /> adb push video.avi /sdcard (</span>從電腦複製影像檔到 SD 卡中<span>)<br /> emulator -sdcard video.img (</span>啟動模擬器並載入 SD 卡<span>)<br /> </span></span><span style="font-size:12.0pt;font-family:宋体;color:blue;">下載免費的影片播放軟體，<span>ex: Meridian Video Player (iiivpa.apk)</span></span></p>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;">http://sites.google.com/site/eternalsandbox/Home/meridian-video-player</span></p>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;">adb install iiivpa.apk (</span><span style="font-size:12.0pt;font-family: 宋体;">安裝<span>Meridian Video Player)<br /> </span><span style="color:blue">接下來就可以用裝上去的player播放.mp4、3gp與.wmv三種檔案格式</span></span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">安裝 APK 應用程式</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">adb install filename.apk (</span><span style="font-size: 12.0pt;font-family:宋体;color:red;">安裝<span>filename.apk)<br /> adb install -r filename.apk (</span>保留已設定資料，重新安裝<span>filename.apk)<br /> adb -s emulator-5554 install filename.apk (</span>指定安裝 APK 套件在 5554 的 Android 模擬器中)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;font-family:宋体;">移除 APK 應用程式</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">adb uninstall package<br /> adb uninstall -k package (</span><span style="font-size:12.0pt;font-family: 宋体;color:red;">移除程式時，保留資料<span>)<br /> </span>此package名稱不是安裝APK套裝時的檔名或顯示在模擬器中的應用程式名稱<span><br /> </span>可以先到/data/data或data/app目錄下，查詢想移除的package名稱<span><br /> adb shell<br /> ls /data/data </span>或 /data/app (查詢<span> Package </span>名稱<span>)<br /> exit<br /> adb uninstall package (</span>移除查詢到的 Package)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;      font-family:宋体;">ADB </span><span style="font-size:12.0pt;font-family:宋体;">系統除錯與連結工具</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">$adb devices (</span><span style="font-size:12.0pt; font-family:宋体;color:red;">顯示目前有多少個模擬器正在執行<span>)<br /> $adb -s (</span>指定模擬器來操作<span>)<br /> adb -s emulator-5554 install email.apk<br /> $adb install apkfile (</span>安裝 APK 應用程式套件<span>)<br /> adb install email.apk<br /> $adb uninstall package (</span>移除 APK 應用程式套件<span>)<br /> adb uninstall com.android.email<br /> $adb shell (</span>進入 Android 系統指令列模式<span>)<br /> $ls<br /> $dmesg (</span>查看 Android Linux Kernel 運作訊息<span>)<br /> ls &#8211; </span>顯示檔案目錄<span><br /> cd &#8211; </span>進入目錄<span><br /> rm &#8211; </span>刪除檔案<span><br /> mv &#8211; </span>移動檔案<span><br /> mkdir &#8211; </span>產生目錄<span><br /> rmdir &#8211; </span>刪除目錄 $adb push (複製檔案到<span> SD </span>卡<span>)<br /> adb push mp3 /sdcard<br /> $adb pull . (</span>從 Android 系統下載檔案<span>)<br /> adb pull /data/app/com.android.email<br /> $adb logcat (</span>監控模擬器運作紀錄，以Ctrl + c 離開監控模式<span>)<br /> $adb bugreport (</span>產生 adb 除錯報告<span>)<br /> $adb get-state (</span>獲得 adb 伺服器運作狀態<span>)<br /> $adb start-server (</span>啟動 adb 伺服器<span>)<br /> $adb kill-server (</span>關掉 adb 伺服器<span>)<br /> $adb forward tcp:6100 tcp:7100 (</span>更改模擬器網路 TCP 通訊埠<span>)<br /> $adb shell ps -x (</span>顯示 Android 上所有正在執行的行程<span>)<br /> $adb version (</span>顯示 adb 版本<span>)<br /> $adb help (</span>顯示 adb 指令參數)</span></p>  <ul type="disc"><li style="      text-align:left;"><span style="font-size:12.0pt;      font-family:宋体;">Emulator </span><span style="font-size:12.0pt;font-family:宋体;">命令列啟動參數</span></li></ul>  <p style="text-align:left;" align="left"><span style="font-size:12.0pt;font-family:宋体;color:red;">emulator -timezone Asia/Taipei (</span><span style="font-size:12.0pt;font-family:宋体;color:red;">指定時區<span>)<br /> emulator -no-boo-anim (</span>省略開機小機器人動畫畫面<span>)<br /> emulator -scale auto (</span>調整模擬器視窗大小<span>)<br /> emulator &#8211; scale factor (factor: 0.1-3.0)<br /> emulator -dpi-device 300 (</span>更改模擬器的解析度，default為<span> 165dpi)<br /> emulator -skin (</span>更改模擬器顯示模式<span>)<br /> emulator -help-keys (</span>顯示鍵盤快速鍵說明<span>)<br /> emulator -shell (</span>相當於adb shell 功能<span>)<br /> emulator -data data.img (</span>使 /data 目錄使用 data.img 的檔案空間<span>)<br /> emulator -sdcard sdcard.img (</span>使 /sdcard 目錄使用 sdcard.img 的檔案空間<span>)<br /> emulator -cache cache.img (</span>瀏覽器暫存檔儲存空間<span>)<br /> emulator -wipe-data (</span>使模擬器恢復到原廠設定<span>)<br /> emulator -help (</span>顯示 emulator 指令參數)</span></p>  <p>&nbsp;</p>  </div><br /><div><embed id="lingoes_plugin_object" type="application/lingoes-npruntime-capture-word-plugin" height="0" hidden="true" width="0"></div><img src ="http://www.cppblog.com/life02/aggbug/161521.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-05 19:54 <a href="http://www.cppblog.com/life02/archive/2011/12/05/161521.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>安装APK文件到Android模拟器和Android sdcard的使用</title><link>http://www.cppblog.com/life02/archive/2011/12/05/161520.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Mon, 05 Dec 2011 11:34:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/05/161520.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/161520.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/05/161520.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/161520.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/161520.html</trackback:ping><description><![CDATA[<div><div id="blog_content">     <p><strong>安装APK文件到Android模拟器</strong></p> <p>Android手机使用的执行文件为APK格式，类似于Windows平台的exe文件。在Android模拟器中安装APK文件有多种方法，如果 你是开发人员，可以通过Eclipse+ADT，使用DDMS可以传输文件。大多数可以直接在Windows的cmd中操作就可以了。</p> <p>一、首先在Android SDK的Tools文件夹中找到emulator.exe文件并运行，这时Android模拟器就启动了，</p> <p>二、 将android123.apk文件复制到Android  SDK的Tools目录中（点击下载Android123.apk文件），使用cmd的cd命令定位到Android  模拟器目录Tools中，执行adb install android123.apk命令，这时模拟器将会自动执行安装。&nbsp;</p> <p>三、在Android模拟器中可以找到我们安装好的文件-Android手机之家。</p> <p>四、 用鼠标单击这个文件就可以看到Android手机之家网站的演示程序。&nbsp;</p> <p>&nbsp; 写在最后我们可以发现安装Android软件到模拟器很简单，只需要执行adb install命令就可以了，当然其实我们做的是复制文件到Android模拟器的/data/app文件夹，并创建了一个快捷方式。</p> <p>&nbsp;</p> <p><strong>Android sdcard的使用</strong></p> <p>&nbsp;</p> <p>（下面是在linux运行的，而且是在sdcard的镜像文件同一目录下进行操作的）<br />这两天在实现播放器列表实现，其中需要使用到Sdcard，在网上收集到了一些sdcard的使用，发现几乎都是错误的，最后经过小组几个人的探讨，终于将sdcard使用成功了。下面就将使用sdcard的使用步骤总结下来：<br />我们在网上会发现，很多人都是这样来操作sdcard的：<br />1、首先是生成sdcard镜像文件sdcard.img或者是其他的名称。命令为：mksdcard -l sdcard capacity directory<br />例如：mksdcard 1024M D:\sdcard.img</p> <p>directory 指的是镜像文件存放的目录，capacity就是要创建的镜像文件的容量。这里将镜像文件放在当前目录下。</p> <p>2、之后，启动模拟器：emulator -sdcard sdcard镜像文件的目录<br />例如：emulator -sdcard D:\sdcard.img</p> <p>3、打开另外一个终端，输入下面命令来将资源放入到sdcard里面<br />adb push source-file sdcard的镜像文件目录<br />这个时候会发现这是不能成功的，会得出Read Only System 这样的错误失败提示。<br />这里，来分析一下为什么会失败。<br />在 创建sdcard镜像文件的时候，生成的sdcard.img只是一个镜像文件，而不是一个真正的目录，所以如果要将资源文件放入到sdcard的镜像文 件中，当然是错误的，而我们会发现，sdcard是Android中的存储模拟设备，类似于计算机的硬盘一样，这样我们可以向其中放入资源文件，即可以将 命令adb push &lt;目录/audio.mp3&gt; &lt;/sdcard/audio.mp3&gt;的镜像文件目录<br />改为 adb push &lt;目录/audio.mp3&gt; &lt;/sdcard.之后，我们进入adb  shell中检查是否将文件放入了sdcard中，使用命令adb  shell，ls一下，找到sdcard，检查一下sdcard中，这时，sdcard中已经拥有资源了，即我们的push命令运行成功。<br />以上就是sdcard存储资源的使用。</p> <p>&nbsp;</p> <p><strong>adb命令的使用</strong></p> <p>adb(Android Debug Bridge)是Android 提供的一个通用的调试工具，借助这个工具，我们可以管理设备或手机 模拟器 的状态 。还可以进行以下的操作：<br />1、快速更新设备或手机模拟器中的代码，如应用或Android系统升级；<br />2、在设备上运行shell命令；<br />3、管理设备或手机模拟器上的预定端口；<br />4、在设备或手机模拟器上复制或粘贴文件；</p> <p>以下为一些常用的操作：<br />1、安装 应用到模拟器：<br />adb install<br />比较遗憾的是，Android并没有提供一个卸载 应用的命令，只能自己手动删除 ：<br />adb shell<br />cd /data/app<br />rm app.apk<br />2、进入设备或模拟器的shell：<br />adb shell<br />通过上面的命令，就可以进入设备或模拟器的shell环境中，在这个Linux Shell中，你可以执行各种Linux 的命令，另外如果只想执行一条shell命令，可以采用以下的方式：<br />adb shell [command]<br />如：adb shell dmesg会打印出内核的调试信息。<br />3、发布端口：<br />可以设置任意的端口号，做为主机 向模拟器或设备的请求端口。如：<br />adb forward tcp:5555 tcp:8000<br />4、复制文件 ：<br />可向一个设备或从一个设备中复制文件，<br />复制一个文件或目录到设备或模拟器上：<br />adb push<br />如：adb push test.txt /tmp/test.txt<br />从设备或模拟器上复制一个文件或目录：<br />adb pull<br />如：adb pull /addroid/lib/libwebcore.so .<br />5、搜索模拟器/设备的实例：<br />取得当前运行的模拟器/设备的实例的列表及每个实例的状态：<br />adb devices<br />6、查看bug报告：<br />adb bugreport<br />7、记录无线通讯日志：<br />一般来说，无线通讯的日志非常多，在运行时没必要去记录，但我们还是可以通过命令，设置记录：<br />adb shell<br />logcat -b radio<br />8、获取设备的ID和序列号：<br />adb get-product<br />adb get-serialno<br />9、访问数据库SQLite3<br />adb shell<br />sqlite3</p> <p>10、通过gsm call命令可以像Android 模拟器打电话 ，除了在EclipseADT  的DDMS中通过按钮Dial外，还可以通过DDMS外壳调用gsm  call命令直接拨打，我们首先需要启动AndroidEmulator，然后在cmd环境下执行telnet localhost 5554  下面就可以向Android模拟器 拨号，参数为gsmcall &lt; phoneNum&gt; ，比如给10086打电话 为gsm call  +10086</p>   </div></div><br /> <div><embed id="lingoes_plugin_object" type="application/lingoes-npruntime-capture-word-plugin" height="0" hidden="true" width="0"></div><img src ="http://www.cppblog.com/life02/aggbug/161520.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-05 19:34 <a href="http://www.cppblog.com/life02/archive/2011/12/05/161520.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何用live-CD,emulator按装,运行apk</title><link>http://www.cppblog.com/life02/archive/2011/12/05/161519.html</link><dc:creator>life02</dc:creator><author>life02</author><pubDate>Mon, 05 Dec 2011 11:32:00 GMT</pubDate><guid>http://www.cppblog.com/life02/archive/2011/12/05/161519.html</guid><wfw:comment>http://www.cppblog.com/life02/comments/161519.html</wfw:comment><comments>http://www.cppblog.com/life02/archive/2011/12/05/161519.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/life02/comments/commentRss/161519.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/life02/services/trackbacks/161519.html</trackback:ping><description><![CDATA[<div><div id="blog_content">     <p>emlulator可以在运行时与eclipse联起来测试. 但怎么测试己经打好包的apk呢?</p> <p>何果打apk就先不说了.</p> <p>&nbsp;</p> <p>1 把apk放到emulator里,安装,运行:(avd运行,安装apk)</p> <p>&nbsp;&nbsp; 运行cmd :</p> <p>&nbsp;&nbsp;&nbsp; <span style="color: #ff0000;">android-sdk-windows-1.5_r3\tools&gt;adb install snake-sample.apk</span></p> <p>&nbsp; 就OK了. 你打开emulator就看到了.</p> <p>&nbsp;</p> <p>2 如何在live-CD里按装apk呢?</p> <p>&nbsp;</p> <p>把apk放到网络上的一个地方, 然后下载(我试图放到hotmail的复件里,但不行, 又放到163的复件里, 也不行,后来我自己起了个tomcat点击下载的). 会下载到sdcard/download/目录下.</p> <p>把它copy到/data/app就自动按好了.</p>   </div></div><br /> <div><embed id="lingoes_plugin_object" type="application/lingoes-npruntime-capture-word-plugin" height="0" hidden="true" width="0"></div><img src ="http://www.cppblog.com/life02/aggbug/161519.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/life02/" target="_blank">life02</a> 2011-12-05 19:32 <a href="http://www.cppblog.com/life02/archive/2011/12/05/161519.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>