久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術(shù)文章
文章詳情頁

介紹 Visual Studio 的 Android 模擬器

瀏覽:2日期:2022-09-27 18:16:37

Microsoft 本周發(fā)布了 Visual Studio 2015 預(yù)覽版, 里面包含 Android 開發(fā)工具. 安裝的時候, 如果選 Android 開發(fā), Visual Studio 會把調(diào)試 Android 應(yīng)用程序用的 Visual Studio 模擬器也裝上. 你也可以點這里查看視頻介紹.

介紹 Visual Studio 的 Android 模擬器

為了幫助我們把模擬器做的更好,請?zhí)钕逻@個簡短的問卷調(diào)查。

在介紹這個新模擬器之前, 我們先來聊一聊, 為什么需要一個新的 Android 模擬器 – 當然, 你也可以直接跳到自己感興趣的部分去閱讀 :-)

 Android 模擬器存在的必要性

我們知道, 模擬器在 編程-編譯-調(diào)試 開發(fā)周期中, 扮演著很重要的角色(甚至比物理設(shè)備還重要). 所以我們相信, 今天發(fā)布的這個模擬器, 在開發(fā)中是必不可少的.

有了優(yōu)秀的模擬器, 不代表我們就不需要物理設(shè)備了. 反之亦然, 他們之間其實是互補的關(guān)系.

下列幾種情況, 只能用物理設(shè)備測試, 模擬器派不上用場:

測試代碼的性能. 雖然模擬器能幫你糾正代碼中的錯誤, 但是它無法正確的給出, 代碼在指定設(shè)備上的性能評估. 畢竟, 我們都希望測試的結(jié)果, 盡量接近用戶實際使用的效果.

測試某些硬件問題. 比如, 你想測試下游戲的觸摸靈敏度, 外放的音效, 或者調(diào)試 OEM 設(shè)備的 Bug , 這些測試只能在物理設(shè)備上進行.

評估真實的用戶體驗. 譬如, 你設(shè)計出來的人機交互界面, 適不適合用戶邊走路, 邊單拇指操作?

除去上面列舉的場景,大家應(yīng)該都會很樂意使用模擬器。因為調(diào)試代碼通常占用了80%的開發(fā)時間,而模擬器為我們大大提高了工作效率。(除非你的模擬器有其他阻塞性問題或者使用限制)。下面是使用模擬器的幾個理由:

大部分的測試工作都是用來驗證程序的正確性而非性能,并且大部分的代碼都與底層硬件無關(guān)。所以是用模擬器是極好的。

購買一大堆硬件設(shè)備來測試是一件很奢侈的事情(特別是持續(xù)不斷的購買新機)。大部分的硬件差異可以使用模擬器軟件進行配置,比如說屏幕分辨率,不同屏幕的DPI,API級別/平臺版本號等等。

使用物理動作來測試程序?qū)鞲衅鬏斎氲姆磻?yīng)也是很費勁的,比如說動作變化、地理位置變化或是網(wǎng)絡(luò)/電池的變化。在這種場景下,選擇模擬器來模擬傳感器的輸入就非常便捷高效,比如說模擬器可以模擬一段旅程中位置的變化,并測試應(yīng)用程序?qū)Φ乩砦恢米兓捻憫?yīng)。

使用模擬器還有一項而外的便利。管理多個物理連接的USB設(shè)備(一大堆連線和接口),是很麻煩的。此時使用模擬器就簡單得多,模擬器就是一個運行在電腦上普通的應(yīng)用層序,除去了物理連接的煩惱,非常便于管理。

所以說模擬器是軟件的開發(fā)的好伴侶,我們希望把VS的模擬器打造成第一流的。我們從開發(fā)者那里收集到現(xiàn)有模擬器的痛點,在我們的版本上予以一一擊破:

速度慢。這是從Android開發(fā)者那排名第一的抱怨。“這個模擬器速度慢極了,嚴重影響了我的生產(chǎn)率,我還不如用真機測試。”速度慢是不可接受的。使用模擬器應(yīng)該比使用真機的運行速度更快才是,這樣才能提高測試效率。記住一點,我們并不是在測試代碼的運行性能,對功能測試來說就是要讓模擬器盡可能地跑得快。

與Windows的Hyper-V沖突。很多模擬器在運行時要關(guān)閉Hyper-V,或是在使用Hyper-V時,性能反而更糟糕。但使能Hyper-V是大部分開發(fā)者的常見配置,頻繁重啟電腦來開關(guān)Hyper-V是不可接受的。

對那些要使用Windows Phone模擬器(基于Hyper-V)的開發(fā)者來說就更為苦惱。總不能為因為要測試跨平臺的代碼,不斷的重啟和配置電腦設(shè)置吧。

額外的購買和安裝步驟。如果你已經(jīng)在使用Visual Studio,那么恭喜你,你不許要再額外購買和安裝一款其他的模擬器軟件。

更多的費用開銷。購買一款卓越的模擬器,也意味著更高的開銷,這也是拒絕使用模擬器的一個主要原因。Visual Studio的Android模擬器是附贈的,不需要額外的費用。

簡單來說,我們在Visual Studio的Andriod模擬器解決了以上痛點。廢話不多說,下面開始給大家介紹使用VS的Android模擬器的調(diào)試方法,我們將從如何選擇Android模擬器開始講起。

 用 Visual Studio 模擬器調(diào)試 Android 程序

無論你用的是哪一種編程模式: 用 JavaScript (或 TypeScript) 的 Cordova, C++, 或 是用 C# 的 Xamarin, 都可以在 Visual Studio 2015 預(yù)覽版上 編寫-編譯-調(diào)試 Android 代碼.

啟動調(diào)試模式的時候, 要選擇調(diào)試目標(Debug Target). 調(diào)試目標可以是一臺物理設(shè)備, 或者是某個在你電腦上運行的模擬器. 我們來看看怎么給 Visual Studio 2015 預(yù)覽版中的 Cordova 和 C++, 以及 Visual Studio 2013 的 Xamarin 選擇一個調(diào)試目標.

C++ 項目的調(diào)試目標選擇菜單如下圖所示:

介紹 Visual Studio 的 Android 模擬器

Cordova 項目要選擇菜單的最后兩項, 具體看下面的截圖:

介紹 Visual Studio 的 Android 模擬器

(切記, 不要選 “Android Emulator” 這一項. 因為它運行的速度太慢了)

Xamarin 項目的選項如下圖所示:

介紹 Visual Studio 的 Android 模擬器

最好把位于 項目屬性-Android 選項 中的 "Use Fast Deployment" 勾選去掉.

注: 如果你想從別的 Android IDE 臨時用下 VS 的模擬器應(yīng)急. 首先, 按照上面介紹的方法啟動模擬器; 然后, 把項目關(guān)掉, 保留模擬器繼續(xù)運行就可以. 其他 IDE 可以通過 ADB 調(diào)用 VS 的模擬器.

選好調(diào)試目標后, 按 F5 , 你的應(yīng)用就會發(fā)布到模擬器中. 就像平時調(diào)試 VS 的代碼一樣, 程序運行到斷點處停下, 然后你可以查看堆棧, 變量等等. 現(xiàn)在, 大家都知道怎么用模擬器調(diào)試了吧? 那我們繼續(xù)將其他功能。

傳感器模擬以及Visual Studio Android模擬器的其他能力

除了使用模擬器做為部署的目標板以外,你還可以使用模擬器的傳感器模擬以及其他功能。 下面會給大家講解其中的一部分,順序不分先后。

介紹 Visual Studio 的 Android 模擬器

縮放

你可以在開發(fā)機上(主機側(cè))調(diào)整模擬器的顯示大小。模擬器的DPI值是由你的主機顯示器決定的,與縮放的大小無關(guān)。所以如果你覺得模擬器占用了太多的桌面空間,那就縮小它。

使用模擬器右側(cè)的工具欄中的“Zoom”按鈕,就可以調(diào)整大小。

你也可以使用全屏模式,點擊"Zoom"按鈕上方的“Fit to Screen”按鈕即可。

如果你想對模擬器中運行的程序進行截屏(比如說,使用windows自帶的截屏工具),要想取得最好的效果,就要把模擬器的縮放比例調(diào)到最大(也就是100%)。如果想要更好的效果,就要使用模擬器自帶的截屏工具了,這個工具我后面也會提到。

屏幕的朝向/旋轉(zhuǎn)

除非你的應(yīng)用界面是固定不變的, 否則, 就應(yīng)該測試下, 手機處在不同方向時, 應(yīng)用界面翻轉(zhuǎn)后的各種效果, 如: 豎屏, 左橫屏, 右橫屏. 垂直工具欄上有兩個按鈕 "左旋轉(zhuǎn)"(Roate Left) 和 "右旋轉(zhuǎn)" (Rotate Right), 分別可將模擬器向左和向右旋轉(zhuǎn). 旋轉(zhuǎn)后, 模擬器的尺寸不發(fā)生改變.

網(wǎng)絡(luò)信息

由于模擬器使用的是宿主機器上的網(wǎng)絡(luò)連接, 所以網(wǎng)絡(luò)部分不需要配置.

你可以點擊垂直工具欄上的 "工具"(Tools) 按鈕, 然后在展開的"附加工具" (Additional Tools)面板中點擊 "網(wǎng)絡(luò)"(Network) 選項卡查看網(wǎng)絡(luò)配置信息.

介紹 Visual Studio 的 Android 模擬器

定位 (GPS)

如果你的應(yīng)用跟導(dǎo)航, 地理圍欄(geofencing), 行走/騎行/駕駛有關(guān). 那么, "附加工具"(Additional Tools)面板中的 “定位”(Location) 選項卡里頭的定位跟模擬駕駛(driving simulation) 功能就會變得很有用 .

介紹 Visual Studio 的 Android 模擬器

地圖可以拖動過, 放大縮小, 甚至可以查找某個具體位置. 通過放置或移除地圖上的大頭針 (pin) 創(chuàng)建地圖上的點(map points). 左下角顯示的是坐標. 上邊的工具欄的保存按鈕, 可以將地圖上的點存儲為 XML 文件. 有需要時候, 再重新加載進來.

除了 “Live”模式 , 這種由地圖上的點, 直接改變模擬器 GPS 位置外. 還有其他模式可以選擇! 比如你想在地圖上設(shè)置幾個點, 并在這些點之間模擬移動的效果 . 那就選 “Pin” 模式. 然后點工具欄最右邊的 Play 按鈕,就能模擬出從一點到另外一點的移動效果.。甚至, 還可以設(shè)置移動的速度(以秒為單位)。

最后,還有一個跟 “Pin” 模式差不多的 “Route” 模式。此模式也是模擬一點到另外一點的移動效果。不過多了點"曲折"。模擬器會自動計算出兩點之間的實際路徑,并以 1 秒鐘為時間間隔,為這條路徑創(chuàng)建隱形的點。而在這些點之間的移動速度,則取決于另外一個設(shè)置。該設(shè)置的選項有:“步行(Walking)” (5 公里/小時), “騎行(Biking)” (25 公里/小時), “限速(Speed Limit)” (在地圖上, 不同位置, 速度也不一樣), 和“快速(Fast)”。

加速傳感器

如果你想測試應(yīng)用對手機移動的響應(yīng)效果, 那就打開 “附加工具(Additional Tools)” 面板中的 “加速傳感器(Accelerometer)” 。

介紹 Visual Studio 的 Android 模擬器

在 3D 面板中, 直接按住里面那個紅點, 朝你想模擬的方向拖動. 如果你的應(yīng)用已經(jīng)寫了處理移動事件的代碼. 那它就能接收到手機移動的事件.

左下角的 X, Y, Z 值, 可以通過點擊 “Reset” 按鈕重置. 也可以由: 直立豎屏(Portrait Standing), 直立橫屏(Landscape Standing), 平躺豎屏(Portrait Flat), 和 平躺橫屏(Landscape Flat), 這幾項來設(shè)置手機的初始朝向(Orientation)。

最后, 你可以點擊右下角的 “Play” 按鈕模擬震動效果. 我們能看的到的震動效果, 實際上就是 X,Y,Z 這幾個值發(fā)生改變而已. 如果這幾個值不再急劇變化, 說明震動已經(jīng)停止。

電源/電池模擬 (以及開關(guān)機按鈕)

假如,你的應(yīng)用需要對電池的電量變化做出響應(yīng)。 那么你就會喜歡上 “附加工具(Additional Tools)” 面板中的 “電池(Battery)” 選項卡里面提供的功能.

里面有一個滑動條, 用來設(shè)置電池的剩余電量. 當你調(diào)整電量的時候, 右上角的電池圖標也會跟著改變. 你的應(yīng)用也會做出相應(yīng)的反應(yīng).

如果你把 “電池充電(Charging)” 勾選去掉, 過一段時間后, 模擬器的屏幕就會變黑(blank). 這個時間可以在 系統(tǒng)設(shè)置(Settings)-顯示(Display)-休眠(Sleep) 里面設(shè)置. 點垂直菜單欄的 電源開關(guān)按鈕(Power), 可以將模擬器從休眠中喚醒.

介紹 Visual Studio 的 Android 模擬器

截屏

要實現(xiàn)對應(yīng)用截屏,打開"其他工具",切換到"截屏"標簽。然后點擊“捕捉"按鈕,這樣就可以實現(xiàn)截屏,并讓你預(yù)覽一下即刻所截屏。如果你打算保存這個截屏,點擊"保存..."按鈕。如果不喜歡你剛才的截屏,忽略或者再次點擊"捕捉"按鈕。

介紹 Visual Studio 的 Android 模擬器

截屏工具總是實現(xiàn)(按照左下角所顯示的清晰度的)100%進行截屏的,不會理會縮放設(shè)置如何。同時總是正面截圖,不管你選擇何種圖像旋轉(zhuǎn)方式。

通過拖拽安裝 APKs

APK 是 Android 的安裝文件。要在 Visual Studio 模擬器上安裝 APK 文件,直接把 APK 文件拖到模擬器里面就可以。安裝的時候,模擬器會提示 “正在復(fù)制文件…”。安裝完畢,會有一個消息框提示 “ xxx 文件已經(jīng)成功安裝到 Android 系統(tǒng)中”。要確保你的 APK 文件是用 x86 模式生成的!

當然, 你也可以把其他類型的文件(非 APK 文件)拖到模擬器中,這些文件會保存到 SD 卡上。這也是我們接下來要講的內(nèi)容。

SD 卡

如果你的有向目標設(shè)備的SD卡讀寫的需求,模擬器可以利用一個硬盤上的文件夾模擬這個SD卡.

要注意Android鏡像會使用一個獨立的VHD文件來支持對SD卡的模擬. 所以如果你想要在你的開發(fā)機器上和SD卡傳輸文件,你可以把這個VHD安裝到你的Windows上:關(guān)閉模擬器(以停止VM的運行),然后再Windows Explorer上找到VHD的位置,雙擊它就能安裝. VHD默認會位于下面的這兒路徑下面:

C:Users%username%AppData LocalMicrosoftXDEAndroidvsemu.sdcard.vhd

這樣VHD就被作為另外的一個驅(qū)動器安裝到了你的Windows上,你可以像使用其它的驅(qū)動器一樣來使用它. 在重啟模擬器之前,你必須卸載VHD,你可以通過在驅(qū)動器上右鍵選擇“彈出Eject”來實現(xiàn)這個步驟.

可以再鏡像中實現(xiàn)對SD卡的支持讓其它的內(nèi)置Android應(yīng)用和功能可以使用,比如瀏覽器下載和照相機應(yīng)用——它為我?guī)砹讼乱豁椖芰?

照相機

通常你可能會要使用應(yīng)用里面的照相機(使用一個合適的API),而我們支持這個功能. 你也可以直接使用內(nèi)置的照相機應(yīng)用. 當你在模擬器里面啟動照相機時,你將會看到一個固定的圖像,你可以獲取這個圖像的快照,以模擬拍照.

音頻播放,鍵盤文字輸入…

當然模擬器理所當然還會提供其它的一些功能,盡管他們需要來自產(chǎn)品團隊的“努力” :-)。在這里我不會把所有的功能都列出來,單其中有兩個值得注意:

你可以在模擬器中使用你機器的鍵盤輸入文本

任何來自模擬器的音頻播放都可以通過你機器的音響收聽到

配置

在預(yù)覽版中,提供了2組默認配置:

典型的Android手機配置:5吋屏幕,295 DDI,720x1280,1024MB

典型的Android平板配置:7吋屏幕,315DPI,1080x1920,2048MB

你可以在預(yù)覽版中修改內(nèi)存的分配,Hyper-V Manager的配置窗口中提供了配置“Startup RAM”的選項。注意,你也可以修改每個配置中使用的CPU核心數(shù)(默認值是2)。不過,我們還沒有對所有的可能配置進行測試。

介紹 Visual Studio 的 Android 模擬器

我們的工作才剛剛開始,在后面的版本中我們會提供更多的功能,同時也希望大家在下面的這個調(diào)查問卷中反饋意見,以便于我們對需求進行排序。

 看看內(nèi)部實現(xiàn)原理

如果你對Visual Studio Android模擬器的實現(xiàn)原理感興趣,我可以簡單地回答這個問題,就是我們重用了其他產(chǎn)品的工作成果。在概念上,一個模擬器軟件可以分為以下4個部分:

虛擬機(表示為一個vhd),用于模擬你使用的目標板,在這這里目標機就是Android。我們先從Android Open Source Project (AOSP)上獲取到代碼,并加以改進,將其配置為一個x86的虛擬鏡像,這樣就可以使用Visual Studio來進行快速的調(diào)試。

Shell/Chrome,提供了用戶交互界面,可以用它來裝載虛擬鏡像并將其進行渲染顯示出來。可以把這個過程和遠程桌面做一下類比:其實你就是遠程連接到一個本地鏡像上。我們的工作就是從這里開始,直接借鑒了Windows Phone模擬器(我們內(nèi)部稱其為XDE)的shell/chrome。 然后根據(jù)Android的特殊需求,做了一些必要的修改。

虛擬化技術(shù),XDE使用先虛擬化技術(shù)來裝載鏡像,這樣才能進行遠程連接和控制。Windows有深厚的虛擬化技術(shù)功底,我們正是使用了虛擬化技術(shù)Hyper-V來完成這項工作。

連接管道,VS和XDE需要通過連接管道來通信,同樣的調(diào)試引擎和虛擬鏡像也需要。這里我們重用了XDE與Visual Studio之間現(xiàn)有的連接機制,同時也使用了Android Debug Bridge (ADB) 。

現(xiàn)在,再來看看目前這個應(yīng)用的使用限制,我再次希望大家給我們反饋改進意見,我們會優(yōu)先解決大家反饋的問題。

 當前的使用限制

今天給大家分享的是早期的預(yù)覽版,這個版本中還有不少問題和Bug,我希望大家能把更多的問題反饋為我們。 同時這個版本還有不少已知的使用限制--大家趕緊把你們最想要的功能反饋給我們,我們會優(yōu)先處理:

直接或間接使用OpenGL 2以及以上版本的應(yīng)用程序,模擬器目前無法渲染顯示。這項功能不久就會支持,我們已經(jīng)在內(nèi)部版本中實現(xiàn),用來會感覺非常流暢!

市面上有太多不同的Android版本。我們目前只支持 KitKat API 19(android-4.4.4_r1)。后續(xù)會支持更多版本...

如果你的APP使用了 Google Play Services 層,那么這些應(yīng)用不能在模擬器上直接運行。這是因為我們構(gòu)建的Android鏡像沒有包含GMS包(我們目前還沒有獲取到相關(guān)的許可證)。

你需要在x86下重新編譯你的代碼。如果你的代碼只能在ARM下運行,或者使用了不能在x86下運行的第三方庫,那么目前你的代碼是無法在我們的模擬器上運行的。

你只能在支持Hyper-V的操作系統(tǒng)上安裝我們的模擬器。不支持Hyper-V的操作系統(tǒng)有Windows 7和其他非Windows系統(tǒng),或者是在其他的虛擬機上運行。

如說上面所提的限制是你所急需的,目前的解決辦法是使用真機來測試(或者另找一款更好的模擬器)。我們會在后面的版本中把上面的限制列表變短,所以請?zhí)顚懻{(diào)查問卷來幫助我們進行優(yōu)先級排序。

原文地址:http://blogs.msdn.com/b/visualstudioalm/archive/2014/11/12/introducing-visual-studio-s-emulator-for-android.aspx

標簽: Android
相關(guān)文章:
主站蜘蛛池模板: 日韩城人网站 | 欧美日韩激情 | 一区二区三区国产视频 | 日韩中文字幕电影 | 亚洲精品久久久久久下一站 | k8久久久一区二区三区 | 亚洲国产自产 | zzzzyyyy精品国产 | 成人免费黄色片 | 一区二区免费在线播放 | 日本久久网 | 欧美全黄 | 久久人 | 久久久一区二区 | 日韩一级黄色大片 | 久久久精彩视频 | 91精品国产91久久久久久吃药 | 中文字字幕一区二区三区四区五区 | 在线视频 欧美日韩 | 伊人久操 | 青青草久久| 国产一区二区久久 | 久久久精品免费观看 | 国产午夜精品一区二区三区免费 | 欧美日韩亚洲二区 | 91在线精品一区二区 | www.一区 | 成人亚洲精品久久久久软件 | 国产成人免费视频网站高清观看视频 | 国产成人免费 | 日韩三区在线 | 日韩视频免费在线播放 | 久久国产精品99久久久久久老狼 | 精品久久久久一区二区三区 | 亚洲一区二区三区欧美 | 99精品在线观看 | av在线大全 | 亚洲成人精品一区二区三区 | 最新中文字幕 | aⅴ色国产 欧美 | 成年人视频免费在线看 |