Xamarin.iOSでAdMobの広告がReleaseビルドの実機環境でのみ表示されない
(追記:2016/06/03 08:36 無事に審査を通過しました)
(追記:2016/06/03 03:14 解決したのでページ下部に詳細を追記)
クロスプラットフォームでアプリを開発し、Play Storeには無事公開中なのですが、
App Storeへの申請中に「広告識別子を利用してるのに広告が貼られてないよ」とのことでリジェクトされました。
そんなはずはないと思いながら添付されたスクリーンショットを見ると確かに広告が表示されていません。
テストをしたところ、
Debug ビルド
- シミュレータ → ◯
- 実機 → ◯
Release ビルド
- シミュレータ → ◯
- 実機 → 表示されない
という結果に。
iOSから導入されたATSの設定をしたりしましたが、依然として状況は変わらず.....。
StackOverflowでも同様の症状が報告されていましたが、解決には至っていませんでした。
誰かわかる方いませんか..........
無事表示されました(追記:2016/06/03 03:14)
以下のNugetパッケージを使ってAdMobを表示していたのですが、
試しにパッケージに頼らず、Custom Rendererを使って自分でAdMob用のViewを実装したら無事表示されました!
www.nuget.org
このままApp Storeへと申請したいと思います。
WebAPIのモックアップ作りにjson-serverがすごい便利だった
現在、Xamarinを使って学祭のアプリを開発中なのですが、サーバサイドとクライアントサイドで友人と分担してて、クライアントサイド担当の私がAPIの仕様決めて友人がそれを作るみたいな感じでやってます。
何度も仕様を変更するのも悪いので、ガチガチに仕様を固めてから渡そうとローカルでAPIのモックアップを作ろうと思ったらこんなのを見つけました。
【個人メモ】JSON Serverを使って手っ取り早くWebAPIのモックアップを作る - Qiita
http://qiita.com/futoase/items/2859a60c8b240da70572
npmパッケージのjson-serverというもので、jsonファイルを元にWebAPIのモックアップを作ってくれるらしいです。
さっそく使ってみる。
インストール
ターミナルで以下のコマンドを入力して下さい。
>npm install -g json-server
npmコマンドが使える前提です。-gオプションを付けてシステムにインストールしています。
jsonファイルを用意する
初めは引用元のような下のjsonファイルを用意しました。
{ "users": [ { "id": 1, "name": "futoase" }, { "id": 2, "name": "hogehoge" } ], "limit": 100 }
すると、次のようなエラーが発生。
>json-server db.json \{^_^}/ hi! Loading db.json Done /usr/local/lib/node_modules/json-server/src/server/router/index.js:73 throw new Error(msg) ^ Error: Type of "limit" (number) in db.json is not supported. Use objects or arrays of objects. at /usr/local/lib/node_modules/json-server/src/server/router/index.js:73:11 at /usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:4389:15 at baseForOwn (/usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:2652:24) at /usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:4358:18 at Function.forEach (/usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:8561:14) at /usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:3877:28 at arrayReduce (/usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:639:21) at baseWrapperValue (/usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:3876:14) at LodashWrapper.wrapperValue (/usr/local/lib/node_modules/json-server/node_modules/lodash/lodash.js:8261:14) at LodashWrapper.<anonymous> (/usr/local/lib/node_modules/json-server/node_modules/lowdb/lib/index.js:77:19)
どうやらlimitのところでエラーが起きているようです。
原因はわからず.....。
とりあえずlimitのところを削ると無事動きました。
>json-server db.json \{^_^}/ hi! Loading db.json Done Resources http://localhost:3000/users Home http://localhost:3000 Type s + enter at any time to create a snapshot of the database
表示されているように、
http://localhost:3000/users
でユーザーの一覧を取得できるみたいです。
その他
引用元では他にもレコードの更新やスナップショットの取り方も公開されています。
まとめ
json-server、非常に便利ですね。
サーバと連携するアプリの開発が捗りそうです。