iOS 課金テスト

App Store Connect で新規アプリを追加する
Bundle ID を合わせておく。

機能 → App内課金 から
テストで使用する商品を登録する

製品ID を合わせておく

トップに戻って、
ユーザーと役割 → Sandboxテスター から
課金テストをするApple IDを登録する(既にあればそれを利用する)

テストに使用する iPhoneで課金テストのアカウントでサインインし直す。

Android で課金テスト「出版社はこのアイテムを購入できません」でる

出版社という意味が良くわからないが、
開発者アカウントではという意味だと思われる。

「開発者アカウントではこのアイテムを購入できません」

テスト用に別のアカウントを作成してAndroidに設定して動作確認。
とても面倒くさい。

「指定したアイテムを購入できません」と出たら
テストアカウントでログインされていない可能性もあるので、
アカウントを変更してから、アプリをストアからダウンロードして確認。

重要なことは、テストで課金してしまわないように
テストを行うアカウントを
google play console の
設定 → デベロッパーアカウント → アカウントの詳細 → ライセンス テスト に
カンマ区切りでアカウントを追加しておくこと

そうすると、購入ダイアログで
「これはテスト用の注文です。課金は発生しません。」
と表示される。

Android で課金テスト

google play console でアプリを登録する
 画面キャプチャーやアイコン等も必要なのでそれなりに準備が必要

テストなんで、
「内部テスト版」で設定。

色々設定して、申請すると1時間くらいして、公開される。

そうすると、以下のようなURLが出てくるので
テストユーザーに登録している端末でアプリをダウンロード

https://play.google.com/apps/internaltest/999999999999999999999

一度でも流れがわかっていたらたいしたことないんだけどね。

purchase を使用時、’Cordova/NSData+Base64.h’ file not found のエラー

android では利用できそうだったのに、iosだとエラー

cordova-plugin-purchase をアンインストールして

https://github.com/j3k0/cordova-plugin-purchase.git を
git でインストールしたら、iosでもコンパイルが通った。

iOS で navigator.geolocation.getCurrentPosition が効かない

xxxxxx.plist ファイル内に

NSLocationWhenInUseUsageDescription
現在地から目的地に行くために使用

参考:https://dev.classmethod.jp/smartphone/iphone/ios10-privacy-data-purpose-description/

iOS11 から
NSLocationAlwaysUsageDescription  位置情報へのアクセス (常に許可)
は使えなくなったみたい

GoogleService-Info.plist の配置位置が変わった?

[Firebase/Core][I-COR000001] Configuring the default app.
Terminating app due to uncaught exception ‘com.firebase.core’,
reason: ‘Configuration fails. It may be caused by an invalid GOOGLE_APP_ID in GoogleService-Info.plist or set in the customized options.’

以前は GoogleService-Info.plist ファイルは
root フォルダに配置だったのに、以下フォルダに自動的に配置されていて、なのに必要な情報が未設定だったので、上書き

platforms/ios/Resources/GoogleService-info.plist

clang -fobjc-weak is not supported

visual studio 上の cordova で ios プロジェクトを出力
cordova も 7.1.0 などになり、xcode に持っていった後もプロビジョニングファイルを
変更するだけでOKだと思っていたのに、急に表題のエラーが発生。

かなり悩んだが、
Deployment Target が何故か 1 と設定されていたのを、11.4などと最新版にするだけで解決。