2020年9月30日水曜日

[Visual Studio] Xamarinセットアップ

1.Android,Windows,iOSのクロスコンパイルができてしまう⁉


Visual Studio 2017/2019には、Miacrosoftが買収したXamarinが入っており、Android、Windows、iOSのクロスコンパイルができてしまうという、夢のような仕組みがあるらしい。
このうちiOSについては、そんなにうまい話ではないことが、露見した。
どうも、Visual Studio for Macを入れたMacが必要で、WindowsのVisual Studioと連携するらしい。
実行ファイルの生成、実行ファイルの実行はMac側で行われ、Windowsは単に窓口ということらしい。
なんかかえって面倒なことに巻き込まれそうなので、iOSはあきらめた。

今回の目的は、既にiOSで動いているアプリを、Androidに移植することであり、どうせならWindows版も同時に作れたらいいなぁぐらいの感じだったので、Android Studioではなく、このXamarinで開発することに決めた。


2.UWPというプロレス団体


さすがにMFCはもう使っていないが、いつもWindowsアプリは、.Net Framework+C#で作成し、Windows Formsアプリとしてリリースしている。
WPFとかStoreアプリという選択肢は見たことがあるが使ったことはなく、UWPという新しいプロレス団体のようなものについては、知る由もない。
とにかくXamarinを使うなら、この団体に加入しないといけないらしい。UIはXAMLで記述しないといけないらしい。


3.「Android SDKとツール」が真っ白


とりあえずMicrosoftのいう通りやってみた。

ビルドは通り、Androidのエミュレータも起動するが、サンプルが実行されない。
なんかよくわからないけど、バージョンが古いとか、Hyper-V使った方がいいとか言われ、「Android SDKとツール」ダイアログに誘導される。
が真っ白で何もでてこなくて困惑。

【処方箋】
歯車マークから、リポジトリをMicrosoft(推奨)→Google(サポート対象外)に変更すると治った。


4.Hyper-Vの有効化


Microsoft様の説明

結論からいうと、Windowsの機能で、Hyper-VをONにすればいい。
しかし、BIOSでVirtualization Technology (VT-X)が無効になっていると、Hyper-Vプラットフォームのチェックボックスがグレーアウトで触れない。


その場合は、BIOSでの設定変更が必要(いまどきの64bit Windows PCのBIOSなら選択肢があるはず)。


5.管理者権限でVisual Studioをつかう


「選択したエミュレーターを起動できませんでした。これはプロセスに十分なアクセス許可がないことが考えられます。VS を管理者として起動すると回避できる可能性があります。」
といわれる。常に管理者権限でないとダメなの?


6.UWPでビルドできない⁉


ソリューションエクスプローラにUWPが出てくるが、移行が必要とか言われる。
そもそも、新規プロジェクト>Cross-Platformで、UWPのチェックボックスが触れない。


Visual Studio InstallerでUWPを全部入れたら治った。


7.XAMLデザイナーって使えないんすか(゚Д゚)ハァ?


どうやって画面作ったらいいんでしょう? しばし茫然。
プレビューはあるらしいのだが、メニューに見当たらない。どこにあるのやら。

よ~く見ると右下に左右分割という小さなボタンがあり、これを押すとXAMLのプレビュー画面がでる。



1 件のコメント:

  1. 5.ですが、Windows10の開発者モードをONにしたら、解決したような気がします。

    返信削除