熊小屋日誌

Windows 10 UWPやXamarin, Python、mbed/NetMF/Arduino/Edison, Azureなどぼちぼちと。たまにPCや勉強会、セミナーなどの話題も

Multilingual App Toolkitのv4.0.1466.0ベータ版

Windows Phone 8.1アプリ、Windows 8.1ストアアプリの多言語化を支援するツールキットの"Multilingual App Toolkit"(MAT)ですが、 Windows 10 UWPアプリ、Xamarinアプリの多言語化をするにはv4.0のベータ版が必要です。 現在はv4.0.1466.0ベータ版がVisual Studioのギャラリーで公開されているようです。

注意点としては、説明>NOTEにあるように現時点のMAT v4.0ベータ版はMAT v3.1と互換性がなく、MAT v4.0ベータ版を導入したVisual StudioでMAT v3.1で多言語化を有効にしたプロジェクトを開けなくなります。 対応策としては、手動でプロジェクトファイルを編集して、"多言語化対応を外す"作業のあと、"(1) MAT v3.1環境に戻す"もしくは"(2) MAT v4.0ベータ版に移行する"方法があります。

(参考) MAT v4.0 Technical Preview Manual Upgrade – Customer Feedback for the Multilingual App Toolkit

多言語化対応を外す

プロジェクトを選択して、Visual Stduioの"ツール">"多言語アプリツールキットの無効"メニューを選択できる場合はそれを使います。

f:id:kumar:20151123143942p:plain

ただし、このメニューが操作できない場合は、プロジェクトファイルを手動で編集する必要があります。

  1. プロジェクト全体をバックアップする。
  2. MAT v4.0ベータ版を導入したVisual Studioで、プロジェクトファイルを編集(右クリックして編集。下記画像)して、以下の2か所を削除する。
    1. <PropertyGroup Label="MultilingualAppToolkit">~</PropertyGroup>
    2. <Import ~ Label="MultilingualAppToolkit" />
  3. プロジェクトファイルを保存して、再読み込みする。
  4. プロジェクトの翻訳ファイル(xlfファイル)を他のフォルダにコピーして退避する。
  5. プロジェクトから翻訳ファイルを削除する。
  6. ビルドをして問題がないか確認する。

f:id:kumar:20151123145031p:plain,w400

(1) MAT v3.1に環境を戻す

MAT v3.1に環境を戻す場合は、拡張機能を入れなおして、翻訳ファイルを戻します。

  1. MAT v4.0ベータ版をアンインストールして、MAT v3.1を導入する。
  2. MAT v3.1で多言語化して、退避した翻訳ファイルを戻す。

(2) MAT v4.0ベータ版に移行する

Windows 10 UWPアプリに対応する必要があるなど、MAT v4.0ベータ版に移行する場合は 以下の手順が必要です。

  1. MAT v4.0ベータ版で多言語アプリツールキットを有効にする。
  2. プロジェクトを右クリックして、翻訳言語の追加を実行して、必要な言語を追加する。
  3. 追加された翻訳ファイルを右クリックして、"Multilingual App Toolkit">"Import / recycling translations..."を選択する。
  4. 追加ボタンを押して、退避したMAT v3.1の翻訳ファイルを選択する。
  5. ダイアログボックスの'Enable resource recycling'をチェックして、インポートボタンを押す。
  6. ビルドしてインポートした翻訳を確認する。

なお、不具合で全ての翻訳が取り込まれないことがあるようです。数回インポートすることで回避できるようです。

参考情報

Visual StudioギャラリーのMultilingual App Toolkit v4.0 Betaページの "Additional information"にあるように、解説動画がChannel 9で公開されています。

channel9.msdn.com

channel9.msdn.com