同じC#/xamlメトロアプリのさまざまなブランチを持つプロジェクトがあります。私はアプリをテストするタブレットPCを持っており、通常はその上でアプリパッケージの展開を行って、最新のコードをテストします。発生する問題は、同じプログラムの複数のブランチがあることが多いことです。タブレットコンピューターで両方を(比較対照するために)実行できるようにしたいと思います。しかし、アプリをインストールしようとすると、すでにインストールされていると表示され、インストールが失敗します。Windows 8がブランチを別のアプリとして認識できるように、ブランチでどのような設定を変更する必要がありますか?
3 に答える
同じ名前で異なる親フォルダーに2つのプロジェクトを作成し、プロジェクトディレクトリで差分を作成してみます。その方法で見つけることができる種類のIDが必要です。
*編集(回答を追加)csprojファイルを比較すると、さまざまなプロジェクトGUIDが表示されます。
<ProjectGuid>{2BC8E996-5E25-4714-9327-930553131C04}</ProjectGuid>
<ProjectGuid>{DFC50C25-399E-437A-B641-E48FEA776EFE}</ProjectGuid>
ただし、他の違いは、パッケージ化されたアプリを異なるものにする必要があることです。Package.appxmanifestでは、異なるGUIDも取得します。
<Identity Name="3b69e4ca-4072-4ec6-8790-4090bf72a8c3"
<Identity Name="2a943b24-68d2-4480-a475-1d606e546672"
そのGUIDを変更すると役立つはずです。
パッケージ名にブランチIDを追加できるはずです。そうすると、それは別のパッケージになります。
これは最終的な展開には適していませんが、開発者ライセンスがインストールされている場合は機能するはずです。
それで
company.applicationname
vs
company.applicationname-branch1
company.applicationname-branch2
異なるパッケージと見なす必要があるため、両方をインストールできます。
> Windows 8がブランチを別のアプリとして認識できるように、ブランチでどの設定を変更する必要がありますか?
AppxManifest.xml内のパッケージの名前がキーです。XPath-speakを使用するには、ユーザーは/ Package / Identity [@Name]ごとに1つのパッケージのみをインストールできます。これは、固有の部分です。
[そしてName+Publisherは重要です。Name = X、Publisher = Yがインストールされていて、Name = X、Publisher = Zをインストールしようとすると、エラーが発生します]
Visual Studioは、名前を制御している場合、名前に「.Debug」と「.Release」を追加すると思います。そのため、F5で複数の構成を行うことができます。[これには独自の問題があります。たとえば、名前と一致する必要がある通知を使用する場合...]