2017-04-11 173 views
3

我是Xamarin新手。我使用Xamarin.Forms模板在Visual Studio 2017中創建示例移動解決方案。該過程創建了四個項目Xamarin PCL,Xamarin Android,Xamarin.iOS和Xamarin.UWP。如果不對生成的解決方案進行任何修改,我正在嘗試運行它。Xamarin.Forms Visual Studio 2017項目不部署

第一個問題是,當我將UWP設置爲啓動項目時,Windows模擬器顯示並完美運行該應用程序。但是當我嘗試在Android上做同樣的事情時,根據我所做的環境變化,我在不同的時間得到了不同的錯誤。最後,使用Visual Studio的Android模擬器,Phone UI顯示出來,但不是我的應用程序。在後臺,我可以看到Visual Studio成功完成了構建過程,沒有任何錯誤,但部署過程很簡單。我離開部署過夜,但仍在早上運行。這是我的環境。

  1. 英特爾i7處理器
  2. 在BIOS中啓用虛擬技術
  3. 的Windows 10教育
  4. 32GB RAM
  5. Hyper-V的Windows中禁用
  6. 執行 「BCDEDIT /套hypervisorlaunchtype關閉」 命令窗口並重新啓動。

我試着以不同的組合設置上述環境,但是它們都沒有讓應用程序工作。當我從android sdk使用android模擬器時,構建過程會引發錯誤。唯一的模擬器,甚至建立的是Visual Studio模擬器。但部署掛起。

我的第二個問題是,我已經爲版本24和25安裝了android SDK。但是在模擬器下拉列表中,我只能看到23的模擬器。我在Visual Studio和android sdk manager中檢查了安裝路徑並且它們都指向相同的安裝文件夾。我需要什麼來使版本24和25的仿真器可用?

我再說一遍,在運行它之前,我沒有對Visual Studio中生成的解決方案進行任何更改。過去三天我一直在這裏工作,無法完成工作。請幫忙。

+0

檢查您的Droid項目的項目選項。它具有支持的API級別。確保24和25被支持,否則你將無法在該模擬器(或設備)上運行它。 –

+3

Windows模擬器(與模擬器相反)和visual studio android模擬器實際上都需要hyper-v,所以你不想讓那個被禁用。您可能看到關閉hyper-v的建議的原因是啓用基於virtualbox的仿真器,但是Microsoft使用hyper-v。所以我會啓用它,並確保你可以運行它們。對於UWP應用程序,默認情況下將在模擬器中運行,該模擬器只是另一個窗口中的Windows桌面。該模擬器是爲Windows手機。哦,微軟還沒有API 24或25模擬器的圖像,但23對大多數事情都很好。 –

+0

@BenReierson感謝您的信息。我已經嘗試了Hyper-V的開啓和關閉。還有一點是:在我的Android SDK Manager下,Entel x86 Emulator Aceelerator(HAXM Installer)版本6.1.1被標記爲「與Windows不兼容」,我在很多帖子中看到這也可能是問題,但我不知道如何安裝HAXM,我想我忘了在原文中提到這個 –

回答

4

過去幾天拉我的頭髮後,我終於得到了我的Xamarin.Forms Android應用程序來顯示我的網頁在模擬器上。感謝所有成員的建議。瑞恩的建議幫了很多忙(我爲他+1,謝謝瑞安),但沒有解決我的問題。我進一步搜索了一下,並發現一個建議,要求更改以下爲我最終完成的設置。所以,如果有其他人像我一樣卡住了,除了清理和更新所有軟件包外,還請執行以下操作。 爲虛擬機打開Hyper-V虛擬機的設置(虛擬機關閉時)。展開左側的處理器節點,然後單擊「兼容性」。現在在右側的「使​​用不同的處理器版本遷移到物理計算機」上打勾。在Visual Studio模擬器工具中啓動您的模擬器。現在,開始在VS中使用已經運行的相同模擬器來調試你的android項目。延遲後(總會有延遲),您的應用程序將顯示在模擬器上。 Yey!

4

我剛剛安裝了Visual Studio 2017(在Win10 15063.138上),發現像你一樣,Xamarin項目不會部署到Android。以下是我的跑步方式:

  • 更新了Android SDK Manager中的所有內容。
  • 從MS安裝了新的,改進的Android模擬器: https://www.visualstudio.com/vs/msft-android-emulator/
  • 使用的下載/安裝一個API級23(6.0棉花糖) 模擬器
  • 開始使用同樣的工具,模擬器(你會看到它在Hyper-V管理器中運行)
  • 在VS中選擇相同的模擬器進行部署/調試(VS附帶的模擬器非常慢)
  • 在VS中,選定的Android項目用於啓動和驗證構建和部署到Android在構建配置管理器。

注意:MS似乎沒有API級別23以上的任何仿真器,因此您的Android項目的編譯和目標設置可能是最新的,但最小目標必須是6.0(API 23)。

+0

感謝您的建議。一秒鐘之後,我就認爲我已經得到了它,但是它只是短暫的,調試過程始於在構建過程中輸出窗口中有很多消息,在仿真器顯示Android手機主屏幕的同時部署。部署完成後,一個白色屏幕(顯然是我的應用程序)出現了幾分之一秒,我甚至看不到測試信息。調試突然停止,沒有任何錯誤消息。任何想法? –

0

我剛清理解決方案並重建。部署並再次運行。部署,有編碼錯誤,但「再次運行」。我討厭那樣的問題。哎呀。

相關問題