Android中利用命令行進行截屏並導出到電腦上

           聲明:本博客爲原創博客,未經允許,不得轉載!原文鏈接爲http://blog.csdn.net/bettarwang/article/details/27819525

      大多數人最常用的截屏方法可能就是利用手機的快捷按鍵了,但是那樣如果要導入到電腦中效率會比較低。實際上有更好的截屏方式,最簡單的當然就是利用Eclipse中的DDMS進行截屏了,點擊“Screen Capture"按鈕後等待10多秒,然後就可直接利用Save按鈕保存到電腦中。

       顯然,由於要進行圖片顯示的原因,在DDMS中會有一定的延遲,效率還不夠高。其實效率最高的方式就是利用命令行來截屏了。用於截屏的shell命令及相關參數的含義爲:

        screencap [-hp] [-d display-id] [FILENAME]

         -h:this message(本條信息)

        -p:save the file as a png.(將文件保存爲png格式)

        -d:specify the display id to capture,default 0.(爲本次截屏指定顯示編號,默認爲0)

     If FILENAME ends with .png it will be saved as a png.(如果文件名以.png結尾,它會被保存爲png圖片)

     If FILENAME is not given,the results will be printed to stdout.(如果沒有指定文件名(其實是完整的文件路徑),那麼結果會打印到標準輸出中。實際上就是會將圖片信息打印到屏幕上,當然是一片亂碼。所以最好指定文件名。)

         一般來說,-h,-d這兩個參數對我們作用不大,-p用到的地方多一些,但是我不建議用-p,原因如下:

      比如我們用這麼一個命令截圖:screencap -p /mnt/sdcard/Pic01,截取的這個圖形文件名就是Pic01而不是Pic01.png,這樣導出時的命令就變成了adb pull /mnt/sdcard/Pic01 d:/,其中d:/是我們要導出到電腦上的路徑,這樣我們還要給它添加上後綴。

      雖然也可以用screencap -p /mnt/sdcard/Pic01.png的命令,但是顯然沒有screencap /mnt/sdcard/Pic01.png及

screencap /mnt/sdcard/Pic01.jpg這樣的命令方便。

     另外有幾個值得注意的地方是:第一,如果想將截圖放在sdcard中,不一定就是我這樣的路徑(/mnt/sdcard/),因爲這跟底軟的實現有關,最好就是到DDMS確認一下;第二,從電腦push APK到手機中是要先remount的,但是從手機中pull文件到電腦上是不需要先remount的;第三,screenshot命令是不能截屏的,我嘗試過,導出到電腦上發現是很雜亂很奇怪的圖形,有興趣的童鞋可以驗證一下。

     上面所有的命令都是我親自驗證的,還有問題的小夥伴就到下面留言吧!


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章