none
Androidエミュレータ、Xamarinデザイナーの動作がおかしいです RRS feed

  • 質問

  • Visual Studio Community 2019Xamarinネイティブを使用して、Androidのアプリを作成しようとしているのですが、以下の様な不具合?が発生しています。当方はモバイルアプリ開発やXamarinは全く初めてで、私の操作が悪いのかもしれませんが、どこが悪いのかわかりません。

    1.以下の様な操作でプロジェクトを作成し、エミュレーションしようとしています。

    1.1 新規プロジェクトの作成

    (1)「Androidアプリ(Xamarin)」を選択。

    (2)プロジェクト名を例えば「ErrorTest」とする。

    (3)「場所」はD:\Android_2019\XamarinNativeAndroid\TestProjectsとする。

    (4)「空のアプリ」を選択。

    (5)「Minimum Android Version」を「Android 4.4 (Kit Kat)」に設定

    (6)ソリューションエクスプローラで「プロパティ」→「Androidオプション」の「共有ランタイムの使用」のチェックは入れておく。

    1.2 作成したエミュレータ

    名前                 Galaxy Nexus

    基本デバイス         Galaxy Nexus

    プロセッサ           armeabi-v7a

    OS                  Kit Kat 4.4 - API 19

    Google APIs          チェックを入れる

    2.発生している現象

    2.1 エミュレーションが正常に動作しない。

    作成したプロジェクトに全く手を入れずにビルドし、エミュレーションを試みるのですが、次のようにうまくいきません。

    (1)(1)「共有ランタイムの使用」にチェックを入れたまま、デバッグを開始すると、デバッグは開始されるが、白い画面が表示された後、勝手にデバッグが終了してしまう。

    (2)(2)「共有ランタイムの使用」のチェックを外してデバッグ開始すると、「配置エラー」となる。

    2.2 画面のデザイナーの動作がおかしい。

    ソリューションエクスプローラで「Resources」→「layout」の下にある「activity_main.xml」をダブルクリックしてデザイナーを起動するのですが、次のように動作がおかしいです。

    (1)配置したコントロールがデザイナー画面に表示されない。

    「ツールボックス」からコントロールをドラッグアンドドロップしてデザイナー画面に配置するのですが、配置したコントロールが画面に表示されません。activity_main.xmlのコントロール部分にカーソルを置くと、コントロールの輪郭だけが表示されます。

    (2)2個目のコントロールが配置できない。

    activity_main.xmlファイルを直接編集すれば2個目のコントロールを配置できますが、デザイナー画面で2個目を配置できません。

    1個目のコントロールを削除すれば、次のコントロールが配置できるようになります。

    (3)(3)コントロールのIDを変更しても、変更したIDがすぐに有効にならない。変更前の旧IDが有効になっている。例えばボタンのIDをデフォルトの「button1」から「DisplayButton」に変更して、MainActivity.csに次のようなコードを追加します。

    var DisplayButton =

    FindViewById<Button>(Resource.Id./*button1*/DisplayButton);

    すると行末の「DisplayButton」がC#のエディタ上でエラーになります。「DisplayButton」を「button1」にすると、エラーは消えます。その後、しばらく日を置くと、いつの間にか「DisplayButton」のエラーが消えます。

    3.以上のように多数の不具合があることから、VSC2019を再インストールしてみましたが、現象は同じでした。

    4.当方の環境

    Visual Studio Community 2019 Version 16.2.3

    Windows 10 Pro. バージョン1903

    CPU           インテルCore2 Quad Q9550sHyper-Vなし、Intel VT-xあり)

    メモリ        GB

    以上、よろしくお願いします。



    • 編集済み fghck856 2019年9月6日 15:42
    2019年9月6日 15:12

すべての返信

  • fghck856さん、こんにちは。フォーラムオペレーターのHarukaです。
    MSDNフォーラムにご投稿くださいましてありがとうございます。

    上記の件につきまして、
    2.2
    (1)(2)プレビューウィンドウのAppThemeタグでテーマを選択してから、コントロールをツールボックスからドラッグし、デザイナ画面に効果を与えます。       
    (3)IDを変更した後、「ctrl + s」で変更を保存してみてください。まだすぐに有効にならない場合は、エラーを無視して、再構築して実行できます。 
    時々更新されていないことがあります。

    どうぞよろしくお願いします。


    MSDN/ TechNet Community Support Haruka

    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、
    ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2019年9月11日 7:28
    モデレータ
  • Haruka様、こんにちは。ご回答ありがとうございます。

    2.2項(1)(2)について
    テーマを選択後、コントロールをドラッグしてみましたが、やはりダメです。
    ツールボックスからコントロールをドラッグして、マウスから指を放す前までは、デザイナ画面のスマホ部分に色がついて、ボタンもテーマを反映したボタンの画像が表示されているのですが、マウスから指を放すとボタンやスマホ部分の色が消えます。2個目のボタンもやはり配置できません。
    テーマの数が多すぎて、全てを試したわけではありませんが、どのテーマを選択しても、同じようです。

    2.2項(3)について
    IDを変更後、変更を保存してみましたが、同じで、変更したIDが有効になりません。リビルドすると変更部分がエラーになります。

    よろしくお願いします。

    2019年9月11日 18:41
  • fghck856さん、こんにちは。フォーラムオペレーターのHarukaです。
    ご返信いただきありがとうございます。

    2.2項(1)(2)について
    すみませんが、見当が付きませんでした。与えた方法は私側で機能しますが。

    2.2項(3)について
    プロジェクトをクリーンアップしてから再構築してみてください。
    まだ機能しない場合は、Resource.Designer.csファイルのコンテンツを削除してから、再構築してください。(ファイルではなくコンテンツを削除します)。

    どうぞよろしくお願いします。


    MSDN/ TechNet Community Support Haruka

    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、
    ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2019年9月18日 1:44
    モデレータ
  • Haruka様、ご回答ありがとうございます。

    2.2項(1)(2)について
     私のパソコンでだけダメならば、とりあえずあきらめようかと思います。

    2.2項(3)について

    ①ソリューションを「クリーン」した後、リビルドしてみましたが、やはりダメです。

    ②「Resource.Designer.csファイルのコンテンツを削除」とは、ファイルの中身のコードをすべて削除するということでしょうか。勉強不足ですみませんが、確認のため問い合わせます。

    以上、よろしくお願いします。

    2019年9月18日 6:44
  • fghck856さん、こんにちは。フォーラムオペレーターのHarukaです。
    ご返信いただきありがとうございます。

    2.2項(1)(2)について
    プレビューを無視して、右側のxamlコードに直接書き込み、それを実行して電話で結果を確認することができます。

    2.2項(3)について
    はい、ファイルを削除するのではなく、ファイル内のすべてのコードを削除します。

    どうぞよろしくお願いします。


    MSDN/ TechNet Community Support Haruka

    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、
    ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2019年9月19日 2:40
    モデレータ
  • Haruka様、ご回答ありがとうございます。

    2.2項(1)(2)について
     「電話で確認する」というのは、スマホの実機にプログラムをインストールして、実機で確認するということですよね。一度その方法を試したいと思っています。

    2.2項(3)について

    Resource.Designer.csファイルの中身をすべて削除後、ソリューションをクリーンし、リビルドしましたが、やはりダメです。変更したIDがすぐには有効になりません。

    以上、よろしくお願いします。

    2019年9月19日 14:44
  • fghck856さん、こんにちは。フォーラムオペレーターのHarukaです。
    ご返信いただきありがとうございます。

    2.2項(1)(2)について
    携帯電話でのテストが最適です。

    2.2項(3)について
    Visual StudioはAndroid studioとは違って、変更後すぐに有効になりません。
    すぐに効果を上げたい場合は、下記のリンクで報告してください。

    https://github.com/github/VisualStudio/issues

    どうぞよろしくお願いします。


    MSDN/ TechNet Community Support Haruka

    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、
    ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2019年9月24日 8:36
    モデレータ
  • Haruka様、こんにちは。ご回答ありがとうございます。

    2.2項(1)(2)について
     携帯電話でのテストを試したいと思いますので、しばらく時間をください。

    2.2項(3)について
    Visual Studio Community 2017で同じことをしてみたら、IDを変更後、変更を保存すると、すぐに変更したIDが有効になりました。VSC2017でOKなのに、VSC2019でダメなようです。これはVSC2019のバグと考えてよいでしょうか。

    よろしくお願いします。

    2019年9月26日 7:30
  • Haruka様、こんにちは。携帯電話でのテスト結果を報告します。

    2.2項(1)(2)について
    xmlファイルを直接編集して、複数のボタンを配置し、携帯電話にインストールしたところ、ボタンは正常に表示されました。
    しかしながら、携帯電話にインストールするには、「アーカイブ」、「配布」、携帯電話へのファイル転送などの作業が必要で、手間がかかります。
    その手間を省くためにあるのがデザイナー画面だと思います。
    「携帯電話にインストールしなければ、コントロールが表示されない」では、何のためにデザイナー画面があるのかわかりません。
    もっとも、前にも書いた通り、この現象が私のパソコンでしか発生しないのであれば、あきらめるしかありませんが。


    2.2項(3)について
    今まで、「IDが有効にならない」という書き方をしましたが、これはすこし違っていて、正確には「IDは有効になるが、エラー表示が消えない」ということのようです。
    なぜならば、エラーが表示されていても、リビルドは「正常に終了」し、携帯電話へのインストールが可能になるからです。
    エラー表示は、パソコンを再起動したりすると、消えることもありますが、これで消えない場合でも、携帯電話へのインストールのために、「アーカイブ」、「配布」などを行うとエラーが消えるようです。
    いずれにしても画面にエラーが表示されているのは気持ちの良いものではありません。また、他のエラー(本当のエラー)との見分けも付きづらいです。
    これはVisual Studio Community 2019のバグのようなので、「フィードバックの送信」を試みようかとも考えています。

    よろしくお願いします。

    2019年9月28日 15:45