私はすでにWindowsPhone 8を使用しており、新しいOSバージョンで作業を開始する予定であるため、Windows Phone8.1の開発について読んでいました。
次に、更新プログラム4を使用してVisual Studio for Windowsをダウンロードし、自分のプロジェクト(WP8を対象とする)を1つ開き、[8.1にアップグレード]をクリックしました。
私のソリューションが名前を「WindowsPhoneSilverLight8.1」に変更したのを見ました。
次に、Windows Phone 8.1をターゲットとする新しいプロジェクトを作成しようとしましたが、Visual C#ツリーの下に次のオプションが表示されました(画像を参照)。
私の目標はWindowsPhone 8.1を搭載した電話デバイス向けに開発することなので、「WindowsPhoneアプリ」を選択しました。しかし、このプロジェクトは他のプロジェクト(WP8からアップグレードしたもの)とは少し違うことがわかりました。ソリューションでは、「Windows PhoneSilverLight8.1」ではなく「WindowsPhone8.1」と表示されます。また、コードも大きく異なります。
そこで、「Windows PhoneSilverLight8.1」と「WindowsPhone8.1」の違いを理解するために、次のような投稿を読んでみました。
でも、理解できるものは何も見つかりませんでした。
ある時点で、「Windows Phone 8.1」はユニバーサルアプリ用だという答えを見つけました...しかし、ユニバーサルアプリを作成したい場合は、「WindowsPhoneアプリ」ではなく「ユニバーサルアプリ」を選択することに同意しません。 。
この2つのプロジェクトの違いを正確に知っている人はいますか?
主な違いは、Windows Phone 8.1ストアアプリは、Silverlightでは使用できないWinRTAPIを厳密に使用することです。
読み進める前に、これは短いバージョンです。
Windows Phoneはバージョン8までのSilverlightアプリのみを使用していましたが、Windows 8(アップ)のアプリもWinRTAPIを提供していました-Windows8 RTバージョンのARM CPU。。
つまり、SilverlightとWinRTの無限の並列処理を停止するために、Microsoftは開発プロセスを統合することを決定しました。 Windows Phone 8.1以降、Windows PhoneはWinRT(Windowsランタイムとしてブランド名が変更された)アプリも実行します。
主な利点は、両方が同じAPIを使用しているため、Windows Phone8.1コードをWindows8.1アプリに簡単に移植できることです。ファイル、ストレージ、ネットワークへのアクセス..それはWindowsPhone全体とWindowsストアアプリですべて同じです。
ここでユニバーサルアプリが活躍します。後で新しいプロジェクトを作成してコードを移植する代わりに、Windows Phone8.1とWindows8.1の両方の共有コードを含むユニバーサルプロジェクトを簡単に作成できるようになりました。
ただし、欠点は、アプリが8.1未満のWindowsPhoneで実行されないことです。
違いは、アプリが使用するフレームワークにあります。
SilverlightはFlashのようなプラグインであるため、Silverlightを使用するアプリを開発する場合は、彼のライブラリ/構文を使用する必要があります。これは、Webおよび電話アプリケーションを開発するための古い方法です。
Universalは、開発者がWindowsPhoneまたはWindowsStoreの両方で実行されるアプリを作成できるようにするためにMicrosoftが開発した新しいフレームワークです。
だから、あなたがインターネットで見つけたものは正しいです:電話アプリはユニバーサルフレームワーク用です。 VSが提供する音声の意味:-ユニバーサルアプリ:任意のデバイス(電話/タブレット/ PC)用-電話アプリ:電話専用(注意してください!ユニバーサルアプリは電話で実行できるため、ユニバーサルアプリ用に開発された任意のライブラリを使用できます)-Windowsアプリ:タブレット/ PCのみ(電話なし)。電話アプリと同じようにユニバーサルアプリライブラリを使用できます
これがお役に立てば幸いです