android另類工具,[置頂] android應用程序開發另解及Android SDK工具集的另類用法

轉載請注明出處:

LouisWang?http://blog.csdn.net/louiswangbing/article/details/6606865

相信對于廣大Android應用開發愛好者來說,Android SDK工具集的大家都已經能夠很熟練的使用,但是我這里要介紹的是SDK工具集的非常用使用方法,即“另類用法”。

首先要說的是,大部分的Android應用程序開發者是基于Android模擬器來開發應用程序的,這種開發方式雖然很方便,直接用Eclipse就可以集成開發環境,基本上不需要手動去設置或者操作什么,但是同時也有幾點很大的弊端:

1、Android模擬器的內存有限,如果開發相對比較耗資源的應用程序,就比較頭疼了--模擬器運行的十分緩慢;而且隨著模擬器分辨率設置的變化,分辨率越大模擬器就越卡也給應用開發帶來了不小的困擾。這時候有些通報可能就會選擇購買開發板或者用買個Android手機來進行應用的開發。但是其實,我們是有更好的方式來做Android的應用開發,這里先賣個關子。

2、通常來說,大家進行Android應用程序的開發都是在本機上實現的,也就是說代碼編輯和模擬器運行是在同一臺機器上實現的,但是有沒有想過將這兩者分別在兩個機器上進行,或者說用虛擬機來實現Android系統的模擬呢?

說到這里,大家是不是覺得很有意思呢?

其實,Android不止是提供了arm版的!!!這里要隆重介紹一下Android—x86版,有不了解的朋友可以百度一下。

其實說起來很簡單,使用android-x86進行應用程序的開發需要經歷一下幾個步驟:

1、找一臺linux主機或者裝一個虛擬機

2、下載android-x86源代碼并進行編譯(這部分本人就不再這里詳細介紹了,百度一下大把大把的)

3、將編譯生成的android鏡像(一般名為generic-x86.iso)用虛擬機運行

經過一下幾步,大家就可以看到一個類似操作系統的android系統了,它的好處是,你可以隨意設置這個系統的內存大小,flash大小,CPU頻率等各種硬件屬性,使得你的應用程序開發不需要再考慮各種硬件資源對模擬器的影響,你不用再喝著咖啡吃著面包看著模擬器緩慢的運行心里干著急了!!!甚至,你完全可以找一臺主機,把android系統裝到臺式機或者筆記本上!!

寫到這里,關鍵的問題就來了,可能有些朋友就要問了,這樣的話,要怎么樣把應用程序開發與android-x86這個系統聯系起來呢?

這就涉及到本文的第二部分了,即android sdk工具集的另類用法。

首先說一種比較傻瓜式的方式:你可以將編譯成的android apk應用程序通過U盤掛載到andriod-x86系統上,然后通過U盤對應用進行安裝。不過顯然,如果只能用這種方式的話,我也不會寫這篇文章里。

其實android sdk工具集本身已經做得夠強大了,只要大家細心看看sdk各工具的使用說明就能發現,這里鄙人做下簡單的說明:

adb工具的使用其實并不只局限于對模擬器的使用,它還有更強大的用法。

adb connect使用說明:

按照剛才說的,你已經將android-x86通過虛擬機運行起來了,或者你資源比較豐富,一不做二不休已經將這個系統裝到另外一個系統上來,那么接下來,就說一下實現的詳細步驟。

首先,在虛擬機或者裝有android系統的主機上用ALT+F1,你會驚奇的發現,原來這個系統還有提供命令行界面!其實想想這也沒什么好奇怪的,因為android使用的是linux內核,而linux內核的ALT+F1就是切入命令行界面的快捷鍵,同樣的,要重新回到圖形界面,ALT+F7就行了,這和linux系統也是一致的。

進入命令行界面之后,敲入netcfg命令,我們可以看到這個系統的ip,比如說這里我們看到的是192.168.1.160。

接下來,就是adb工具的另類用法了:adb connect 192.168.1.160:5555(冒號前面的參數是你android-x86系統的ip,后面那個參數是端口號,不可變)。

當顯示連接成功的時候,所有的豬呢比工作都已經準備完成了。

接下來,就是見證奇跡的時刻:

在windows主機下使用adb install命令將你主機上有的apk應用程序安裝一下,你就會驚喜的發現,這個應用程序居然被安裝到了android-x86系統上,并且運行的飛快,比那什么什么模擬器快了不知道多少倍!!!

更有甚者,你會發現,怎么你通過Eclipse運行應用程序之后,模擬器并沒有打開,而這個應用程序已經神奇的運行到了android-x86系統上來!!!

這是怎么回事呢?

其實原理很簡單,之所以起初你使用adb install和用Eclipse運行程序的時候程序會裝到模擬器上,是因為adb這時候模擬連接的就是模擬器,而當你使用adb connect連接上了android-x86系統上的時候,這個“默認的模擬器”就變成了你的虛擬機或者另外一個anddroid主機了,這樣一來,所以對“模擬器”的操作都將會在android-x86系統上執行。

是不是很神奇呢?

如果有興趣的話,不妨一試哦!雖然可能起初會花費你一些時間,但是帶來的快樂和之后開發的高效,一定會給你意想不到的收獲的!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/259356.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/259356.shtml
英文地址,請注明出處:http://en.pswp.cn/news/259356.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

谷歌2007年上交大考試最后一題解答

N個整數,求其中任意N-1個數的乘積中的最大的一個。 例如 3,2,1,則最大的是3*26 提示:整數包括0和負數 要求給出個比較有效率的算法 ,不能用除法,只能用乘法。 從網上找一了一個解答比較好:http://bbs.csdn.net/topic…

Dynamic Web Module 3.0 requires Java 1.6 or newer報錯

在項目的pom.xml的<build></build>標簽中加入&#xff1a; <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> &…

STL學習筆記5--map and multimap

Maps是一種關聯式容器&#xff0c;包含“關鍵字/值”對。 Multimaps和maps很相似&#xff0c;但是MultiMaps允許重復的元素。 簡單介紹&#xff1a; 1、聲明&#xff0c;首先包含頭文件 “map” map <int,string> test1,test2;//map <int,string>::iterator it1,it…

android讓文件按順序列表,Java/Android 獲取文件夾的文件列表(file.listFiles())并按名稱排序,中文優先...

排序規則由于是中國人&#xff0c;習慣性看中文文件夾放前面比較順眼&#xff0c;因此在別人博客(https://blog.csdn.net/da_caoyuan/article/details/56664673)的基礎上&#xff0c;加上了本身的排序規則。算法默認排序規則是按照ASCII碼表排序(http://ascii.911cha.com/),排序…

用C語言寫解釋器(一)——我們的目標

聲明為提高教學質量&#xff0c;我所在的學院正在籌劃編寫C語言教材。《用C語言寫解釋器》系列文章經整理后將收入書中“綜合實驗”一章。因此該系列的文章主要閱讀對象定為剛學完C語言的學生&#xff08;不要求有數據結構等其它知識&#xff09;&#xff0c;所以行文比較羅嗦&…

【詳解Java中格式化處理】

在Java中我們需要對一個數字進行四舍五入處理或者是對一個字符串進行格式化處理&#xff0c;我們需要使用String.Format方法或者其他格式化方法 一、Format方法 比如&#xff1a;DecimalFormat df new DecimalFormat&#xff08;"#.00"&#xff09;&#xff1b;S…

HDU4506 小明系列故事——師兄幫幫忙

問題鏈接&#xff1a;HDU4506 小明系列故事——師兄幫幫忙。 問題描述&#xff1a;參見上述鏈接。 問題分析&#xff1a;&#xff08;略&#xff09;。 程序說明&#xff1a;函數powermod()是快速模冪函數。 AC的C語言程序如下&#xff1a; /* HDU4506 小明系列故事——師兄幫幫…

1_MVC+EF+Autofac(dbfirst)輕型項目框架_core層(以登陸為例)

前言 在上一篇0_MVCEFAutofac(dbfirst)輕型項目框架_基本框架中&#xff0c;我已經介紹了這個輕型框架的層次結構&#xff0c;在下面的這篇文章中&#xff0c;我將以教師登陸功能為例&#xff0c;具體來擴充下我的core層的代碼。 在這之前&#xff0c;我想先補充討論下是否有必…

文字轉語音+html5,JS實現文字轉語音并播放

html&#xff1a;div>audio>div>js&#xff1a;function doTTS() {var ttsDiv document.getElementById(bdtts_div_id);var ttsAudio document.getElementById(tts_autio_id);var ttsText document.getElementById(ttsText).value;// 文字轉語音ttsDiv.removeChild…

字符串的全排列和組合算法

全排列在筆試面試中很熱門&#xff0c;因為它難度適中&#xff0c;既可以考察遞歸實現&#xff0c;又能進一步考察非遞歸的實現&#xff0c;便于區分出考生的水平。所以在百度和迅雷的校園招聘以及程序員和軟件設計師的考試中都考到了&#xff0c;因此本文對全排列作下總結幫助…

設計模式基于C#的工程化實現及擴展

設計模式基于C#的工程化實現及擴展 轉載于:https://www.cnblogs.com/gzmg/p/3344833.html

Python實現atm機的功能

主要還是參考網上內容&#xff0c;自己做了修改。雖然代碼有小bug&#xff0c;但是不影響學習和測試。功能&#xff1a;1.額度&#xff1a;80002.可以提現&#xff0c;手續費5%3.每月最后一天出賬單&#xff0c;寫入文件4.記錄每月日常消費流水5.提供還款接口1.atm的腳本[rootp…

Direct ByteBuffer學習

ByteBuffer有兩種一種是heap ByteBuffer,該類對象分配在JVM的堆內存里面&#xff0c;直接由Java虛擬機負責垃圾回收&#xff0c;一種是direct ByteBuffer是通過jni在虛擬機外內存中分配的。通過jmap無法查看該快內存的使用情況。只能通過top來看它的內存使用情況。 JVM堆內存大…

魔獸爭霸Ⅲ運行時不能初始化directX的錯誤解決

運行魔獸爭霸3不能初始化DirectX錯誤這樣解決&#xff1a; 1&#xff1a;在運行中輸入(winr)&#xff1a;dxdiag&#xff0c;查看顯示欄&#xff0c;確定電腦已安裝好directx 8.1以上&#xff0c;且下面的三個加速都已開啟。 2&#xff1a;如果沒有安裝directx就下載安裝一個&a…

Android7.0占用空間,Android7.0 開發者注意事項

1、當設備處于充電狀態且屏幕已關閉一定時間后&#xff0c;設備會進入低電耗模式并應用第一部分限制&#xff1a;關閉應用網絡訪問、推遲作業和同步。如果進入低電耗模式后設備處于靜止狀態達到一定時間&#xff0c;系統則會對 PowerManager.WakeLock、AlarmManager 鬧鈴、GPS …

Android探索之旅 | 面向對象和Java基礎

-- 作者 謝恩銘 轉載請注明出處 上一篇 Android探索之旅 | Android簡介 中說到&#xff1a; "Android的默認開發語言是Java&#xff0c;入門簡單。而且&#xff0c;你的Java水平不需要多好就可以上手開發Android App了。" 不少朋友說看到后很是心安。 不過小編也不想…

DataGirdView 編輯項時的驗證

dgvConfig.DataSource CreateTable();dgvConfig.Columns["編號"].ReadOnly true; //只讀dgvConfig.AllowUserToAddRows false; //不允許添加新行dgvConfig.EditingControlShowing new DataGridViewEditingControlShowingEventHandler(dgvConfig_EditingControlS…

使用Vitamio打造自己的Android萬能播放器(7)——在線播放(下載視頻)

前言 本章將實現非常實用的功能——下載在線視頻。涉及到多線程、線程更新UI等技術&#xff0c;還需思考產品的設計&#xff0c;如何將新加的功能更好的融入到現有的產品中&#xff0c;并不是簡單的加一個界面就行了&#xff0c;歡迎大家交流產品設計和技術細節實現&#xff01…

生成0到1之間隨機數的C代碼

#include <stdlib.h>#include <stdio.h>#include <time.h>int main(){srand((unsigned)time(NULL));int i;double r;for(i0;i<50;i){r(float)rand()/RAND_MAX; printf("%f\n",r);}return 0;}

HTML聲明文檔類型后樣式出錯,doctype如何聲明

如何doctype聲明&#xff0c;新增的結構元素和功能元素HTML5已形成了最終的標準&#xff0c;概括來講&#xff0c;它主要是關于圖像&#xff0c;位置&#xff0c;存儲&#xff0c;多任務等功能的增加。 新增的元素有繪畫 canvas &#xff0c;用于媒介回放的 video 和 audio 元素…