UWPでアドオン

アクセスが制限されています プログラミング

 アドオンに初めて挑戦。以前はIAPと言ったらしい。マイクロソフトのドキュメントはどんどん用語が変わるのでわかりにくいらしい。

 Windows.Services.Store という名前空間を使う。以前は Windows.ApplicationModel.Store  が推奨されたらしいが、Windows 10 Anniversary Edition (10.0、ビルド 14393) 以降は、Windows.Services.Store を使ったほうがいいとか。

 アドオンの課金処理を促すボタン(リンク)、起動時のアドオンの課金状態をチェックする、の2つの処理が必要。チェックは GetAppLicenseAsync() で。オフラインでも状態がわかる。ほかの情報はオフラインだとだめなので不要。拾わなくてよかったらしい。遠回りした。詳しくは以下あたり。読み込むのにすごい時間がかかった。わかりにくい。

 アプリとアドオンの製品情報の取得
 アプリとアドオンのライセンス情報の取得

 あと、テストのためにアドオンを作成するのだけど、最初でつまづく。プロパティを設定しようとしたらエラーが出る。戻ったら、作ったはずのアドオンが一覧で出てこない、とか。まずは新規作成したら、10分くらい放置。これで続きの項目が入力できるようになる。

 アドオンのテストは0円でやってる。これで実際に購入を試す。うまくいったっぽい。シミュレーション機能はないそうだが、これなら問題なさそう。

 でもって、別のPC、マイクロソフトアカウントでもテストもしておきたい。そのためにアドオンが機能するバージョンをテストさせようと、パッケージフライトというのを作ろうとする。これは特定のユーザーにのみ開発中のバージョンをテストしてもらえるというもの。

 しかし、パッケージフライトを新規作成する際にユーザーグループというのを作るのだが、これがまったくうまくできない。エラーが出る。それが冒頭の画像だ。どうしたもんだろう。検索してもまだそれらしい情報が見つからない。明日になったら問題なくいけたらいいんだけどなあ。

(追記)
 朝見たらグループの項目が正常に表示された。サーバー側の問題だった模様。

 さらに別の問題。こんなエラー。
Internal compiler error: 型 ‘Microsoft.Cci.DummyModuleReference’ のオブジェクトを型 ‘Microsoft.Cci.IAssemblyReference’ にキャストできません。
 すべてのNugetキャッシュをクリアするでいけるっぽい。ツール-オプションで、Nuget探せばある。これやって、ソリューションフォルダのbin、objフォルダを消す。.vsも消せってあるんだけど、それ消しちゃまずいんじゃないか? という参考記事はこれ

コメント