Xamarin.forms: [UWP]ローカルにインストールするとテンプレートアプリのストアビルドがクラッシュする

作成日 2018年07月20日  ·  3コメント  ·  ソース: xamarin/Xamarin.Forms

説明

ストア用にビルドされたVisualStudio Xamarin Forms UWPテンプレートプロジェクトは、

再現する手順

  1. Visual Studio15.7.1で新しいXamarin-Fromsプロジェクトを作成します
  2. UWPプロジェクトのストアビルド(ネイティブコンパイルを使用)をトリガーします([ストア]-> [ストアのパッケージ])
  3. .appxuploadパッケージを使用して、アプリをローカルにインストールします
  4. 起動時にアプリがクラッシュする

予想される行動

Xamarin Forms .appxuploadファイルは、起動時にクラッシュせず、テスト可能である必要があります。 これにより、Microsoft Storeフォームテストアプリが公開される前にブロックされ(必要な場合)、開発者がテストが必要なアプリを公開するのをブロックします。

実際の動作

Xamarin.Forms.Init()がUWPプロジェクトから削除されると(事実上xfが削除されると)、ストア用にビルドされたときにUWPがクラッシュしなくなります。 x86またはx64ビルドの両方で発生します。 x86のみをビルドしても何も変わりません。

_Test appxbundleが完全に機能することは、問題があるのはストアappxuploadだけであることを言及する価値があります。

基本情報

  • 問題のあるバージョン:2.5。 、3。
  • 最後に知られている良いバージョン:-
  • IDE:VS 15.7.1
  • プラットフォームターゲットフレームワーク:UWP(14393、15063 ...)
  • 影響を受けるデバイス:Windows 10 x86 / x64

複製リンク

これは、Visual Studioにバンドルされているテンプレートプロジェクトで発生するため、必要ありません。

追加情報

https://bugzilla.xamarin.com/show_bug.cgi?id=59538
https://developercommunity.visualstudio.com/content/problem/150965/xamarin-forms-project-uwp-app-dies-on-start-when-i.html

上記の投稿のいくつかは、Microsoftストアからダウンロードしてインストールすると、ローカルにインストールすると.appxuploadがクラッシュしても、パッケージは問題なく実行されることを説明していました。 この部分の問題は、デスクトップブリッジのアクセス許可があるため、ストアを公開する前に.appxuploadパッケージをMicrosoftでテストする必要があることです。 ローカルテスト時にクラッシュするため、公開できません。

5 high impact UWP bug

最も参考になるコメント

/ cc @krumelur

全てのコメント3件

これをローカルでテストしたとき、デバッガーに接続したときに見た例外はこれに似ていました

https://stackoverflow.com/questions/50010855/could-not-load-file-or-assembly-system-private-corelib

デスクトップ拡張機能を使用しているとは思いませんが、モバイル拡張機能を使用している可能性がありますか?

そうは言っても、私はここの指示に従いました
https://docs.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-packaging-dot-net
パッケージプロジェクトを介してプロジェクトを作成し、そのバンドルを使用すると、問題なくローカルにインストールして実行できます( 。\ Add-AppDevPackage.ps1を使用)。

追加の考え
https://stackoverflow.com/questions/50216085/missing-system-assembly-in-appxupload-only

デスクトップブリッジの許可のため、ストアが公開する前のMicrosoft

@xabreデスクトップブリッジのアクセス許可を使用しているため、UWPパッケージプロジェクトを使用してストアに送信してみてください。
https://docs.microsoft.com/en-us/windows/uwp/porting/desktop-to-uwp-packaging-dot-net
理由に関するいくつかの追加の注意事項
https://stackoverflow.com/questions/50010855/could-not-load-file-or-assembly-system-private-corelib

これに関するいくつかの探索的作業からのいくつかの追加のメモ

  • appxupload内にあるappxbundleは、ダブルクリックインストールの準備ができていません。 このファイルと一緒にインストールされない依存関係がいくつかあるため、ローカルで実行するとクラッシュします。 _testフォルダーでps1ファイルを実行すると、最初にappxbundleと一緒にいくつかの依存関係がインストールされることがわかります。

  • 私が見つけたものから完全にバニラなUWPプロジェクト(フォームなし)を作成し、最小ターゲットを> = 16299に設定すると、appxupload内のappxbundleはそれ自体ではインストールできません。 appxbundleを_testフォルダーにコピーしてから、ps1ファイルを実行すると、依存関係が一緒にインストールされますが、ファイル自体をダブルクリックするだけでは機能的にインストールできません。 そのバンドルをインストールできないことは、ストアがアプリケーションを実行できないこととは関係がないようです。

/ cc @krumelur

このページは役に立ちましたか?
0 / 5 - 0 評価