現在將我的Android SDK工具更新至25.3.1後,仿真器將不再運行。SDK工具更新到25.3.1後,Android Studio上的仿真器無法啓動
我可以打開AVD管理器。當我打在名單上的模擬器的一個「玩」,我看到下面的欄上的Android工作室
但隨後進度條到達終點後,沒有任何反應。
我在release notes看到最新的更新帶來了模擬器的變化,所以我想知道如果這是一個錯誤,或者我錯過了有關的東西。
我正在使用Android Studio 2.3。
任何想法?
現在將我的Android SDK工具更新至25.3.1後,仿真器將不再運行。SDK工具更新到25.3.1後,Android Studio上的仿真器無法啓動
我可以打開AVD管理器。當我打在名單上的模擬器的一個「玩」,我看到下面的欄上的Android工作室
但隨後進度條到達終點後,沒有任何反應。
我在release notes看到最新的更新帶來了模擬器的變化,所以我想知道如果這是一個錯誤,或者我錯過了有關的東西。
我正在使用Android Studio 2.3。
任何想法?
升級後我遇到了同樣的問題。我無法弄清楚是什麼導致配置問題,但我確實找出了一種解決方法。
首先,我試圖通過命令行啓動模擬器:
$ emulator @<name_avd_image>
emulator: ERROR: This AVD's configuration is missing a kernel file! Please ensure the file "kernel-ranchu" is in the same location as your system image.
emulator: ERROR: ANDROID_SDK_ROOT is defined (<android>/sdk) but cannot find kernel file in <android>/sdk/system-images/ sub directories
,如果你與-verbose
標誌運行emulator
你可以得到更多的信息。我嘗試重新安裝系統映像(例如Android API 25 x86 w/Google API),Android Emulator 25.3.1,並重新創建AVD,但沒有任何效果。
最後,作爲一個解決辦法,我只是複製一切從SDK系統映像目錄的系統文件到AVD目錄:
例:像素XL(Android的API 25 86 W /谷歌的API)
來源: <android>
/SDK /系統圖像/ Android的25/google_apis/86/
目的地:〜/ .android/AVD/Pixel_XL_API_25.avd/
此後模擬器啓動權利了。這並不理想,但是這阻礙了我的開發,所以我必須重新啓動模擬器。我希望別人能夠弄清楚配置中發生了什麼。
UPDATE:找出配置問題!
我發現我定期所看到控制檯錯誤「你的模擬器是過時的,請通過推出過Android Studio更新:」所以我決定檢查:
$ which emulator
<$ANDROID_SDK_ROOT>/tools/emulator
的幫助從這個thread:
The problem is there are two emulators: one in
$ANDROID_SDK_ROOT/tools
, another one in$ANDROID_SDK_ROOT/emulator
. The one in$ANDROID_SDK_ROOT/tools
cannot start. Place$ANDROID_SDK_ROOT/emulator
before$ANDROID_SDK_ROOT/tools
in your$PATH
variable, it should fix the problem.
注意:對於大多數Mac用戶,您可以編輯您的~/.bash_profile
以更改這些設置,然後運行$source ~/.bash_profile
加載更新。在我的特殊情況下,我還需要清除$ ANDROID_HOME的舊值。
轉到Sdk/emulator/lib64/libstdc++
移動libstdc++.so.6
和libstdc++.so.6.0.18
到MyFolder中(I創建此)(或任何其他位置)作爲備份並複製libstdc++.so.6
,libstdc++.so.6.0.21
從usr/lib64
;再次嘗試啓動您的虛擬設備。
我在lib64文件夾中沒有'libstdC++'。 – shinzou
的libstdc++.so.6
是原因(如通過@doruMarinau指出的); Android Studio 2.3將該文件移至新文件夾your_sdk/emulator/lib64
。
如果使用Linux,創建符號鏈接它:
$ ln -sf /usr/lib/libstdc++.so.6 /your_sdk/emulator/lib64/libstdc++/libstdc++.so.6
謝謝!對於記錄,如果在嘗試從命令行運行模擬器時遇到libGL錯誤(如libGL錯誤:無法加載驅動程序),則會修復它:i965_dri.so – comodoro
真正的問題,至少在Ubuntu的16.10和17.04和Andoid工作室2.4預覽7(但可以與任何Debian的衍生物和以前的版本發生Android Studio)是否Google正在使用模擬器工具分發非工作的libstdC++庫。他們分發6.0.18版本,但我發現工作的是6.0.22。
編輯:有報告說,6.0.21版本的libstdC++的作品以及6.0.22。
所以,你有兩個選擇:
選項1
rm
先前的非工作谷歌的庫中/yoursdkpàth/仿真器/ lib64目錄/的libstdC++
下載和提取libstdc++ official package庫in /yoursdkpàth/ emulator/lib64/libstdC++
不要嘗試安裝.deb,解壓文件s /二進制文件(2個二進制文件位於名爲「lib」的文件夾中),然後手動將它們複製到推薦的路徑中。
選項2
創建simlink與Ubuntu的,這已經是分佈式的lib 6.0.22版本
cd ~/Android/Sdk/emulator/lib64/libstdc++/
mv libstdc++.so.6 libstdc++.so.6.bak
mv libstdc++.so.6.0.18 libstdc++.so.6.0.18.bak
ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6 ~/Android/Sdk/emulator/lib64/libstdc++/libstdc++.so.6
ln -sf /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22 ~/Android/Sdk/emulator/lib64/libstdc++/libstdc++.so.6.0.22
1重要提示:由於谷歌似乎沒有意識到這個問題的,他們在Android Studio中對Android模擬器包進行的每次更新中,都會破壞替換正在使用的SDK C++庫的破壞/舊版本的funcionality。解決辦法是重複上述任何一個程序。
重要2:這隻有在您的AVD配置爲使用PC GPU作爲視頻加速主機(硬件GLES 2.0)時纔有效。在您的AVD上選擇Sofware GLES 2.0將無需任何建議的更改,但您的模擬器將變得非常緩慢。
我已應用*選項2 *。之後,模擬器打開1秒鐘,然後自動關閉! –
@HasanAbdullah檢查你的Android Studio日誌。這似乎是另一種與硬件加速無關的問題。順便說一下,自從26.x.x模擬器解決了這篇文章的問題,以防你想嘗試Android Studio 3預覽版。 –
這適用於BBQLinux,這是一個拱形發行版。唯一的區別是直接在'/ usr/lib'中的庫的位置而不是'/ usr/lib/x86_64-linux-gnu' – Chisko
您是否檢查了安裝在** SDK工具中的Android模擬器?
轉至設置 - > sdk-tools。
查看Android是否安裝。
我面臨同樣的問題。當我檢查SDK工具時,我發現Android模擬器沒有安裝。
這幫助我在搜索了幾個小時解決方案後解決了問題。感謝您分享這個小細節。 – acido
它是推動我堅果的最後幾天。以下是對我有用的東西:
ANDROID_HOME, ANDROID_SDK_ROOT
「系統環境變量」中的變量與Android Studio -> Settings -> Android SDK Location
不同。所以當我改變環境變量時,AVD就開始了!
(更改環境變量,你應該重新啓動Android的工作室之後)
這是一個錯誤libGL函數和libstdC++的問題。無法在模擬器中啓動AVD。 這是一個知道的bug,你可以通過一些簡單的步驟輕鬆擊敗它。
我已經測試上的Ubuntu 16.10 64位
解決此解決方案:
$adb kill-server
$adb start-server
在此之後從Android工作室開始您的模擬器。如果這不起作用,那麼繼續下一個解決方案。
替代解決方案:
首先,安裝一些軟件包和庫:
$sudo apt-get install lib64stdc++6:i386
$sudo apt-get install mesa-utils
其次,調整一些鏈接:
$ cd YOURPATH/Android/Sdk/tools/lib64
$ mv libstdc++/ libstdc++.bak
$ ln -s /usr/lib64/libstdc++.so.6 libstdc++
三,重新啓動您的AVD設備進行測試。
這工作對我來說唯一的解決辦法,是安裝下列缺少的庫:
$sudo apt-get install lib64stdc++6:i386
$sudo apt-get install mesa-utils
一旦你有他們,在SDK與這些模擬器有更新一個如下:
$ ln -sf /usr/lib/libstdc++.so.6 /home/[YOUR_SYSTEM_USERNAME]/emulator/lib64/libstdc++/libstdc++.so.6
再次啓動您的模擬器,它會工作得很好。
從本版本開始,Android Emulator將與SDK Tools分開發布。 所以只是安裝Android模擬器使用sdk工具在你的android工作室
我的問題是ANDROID_SDK_HOME
指向d:\.android
而不是d:\
。無法找到圖像。
我的解決方案並不是同時運行Vagrant(Virtualbox)。檢查[here](http://stackoverflow.com/q/16168799/3045181) – tokosh
Android仿真器在25.3.1版本中移出了SDK工具包,因此下面的解決方案專門在SDK Manager中添加了Android仿真器包在Android Studio 2.3及更高版本中是正確的解決方案。 (https://developer.android.com/studio/releases/emulator.html) –