レビューを促すアラートを表示するAppiraterでローカライズ対応する

公開日: 

Appiraterというレビューを誘導するアラートを表示するライブラリがある。

今回はこれのローカライズ対応のうまい方法についてどこにも情報が見当たらなかったので備忘録。

SampleFileをgitに用意しときました。

巷で広まってる対応方法

探すとAppirater.hを直接編集するという方法を結構見かけるが、
cocoapodsなどでいれていると更新するたびに元に戻るのでこの方法は使えない。

ということで、ライブラリ自体には手を入れずローカライズする方法がソースを見たら実装されていたので
その方法の紹介をする。

Appiraterのインストール

cocoapodsで簡単インストールできる

PodFileで以下を追加して

install もしくは

updateするだけ

便利な世の中になりました。

コード実装

AppDelegate.mにコードを記述します。

 

肝なのはこの部分

ここをYesにすることで自分で定義したローカライズファイルを読み込むようになる。

stringsファイルの準備

Supporting Filesにstringsファイルを追加する。

appirater_1_new_file

 

 

 

iOSの「Resource」から「Strings Files」を押下して「Next」を押下する。

appirater_2_select_strings

 

次に肝なのがファイル名を「AppiraterLocalizable.strings」にすることである。

そうしないと読み込んでくれません。

appirater_3_name

 

次にローカライズ化する。

作成したファイルを右クリックして「Show File Inspector」を押下する。

appirater_4_show_file_inspector

 

「Localize」ボタンを押下する

appirater_5_localize

 

再度「Localize」ボタンを押下する。

appirater_6_base

 

再度File Inspectorを開いて「English」にもチェックを付けておく。

appirater_7_english

 

日本語を追加する場合はプロジェクト名の「Info」タブから「Localization」の「+」ボタンを押下し、「Japanese」を追加する

appirater_8_japanese

 

そのまま「Finish」ボタンを押下する

appirater_9_finish

 

するとこんな形にそれぞれで言語をわけられるようになる。

appirater_10_strings

 

stringsには以下のようにそれぞれの言語で書いてあげる

 

これでRunしてみればうまくローカライズされているはず。

appirater_11_japanese

 

まとめ

setAlwaysUseMainBundleのオプションを用いることでライブラリを弄らずにローカライズすることができた。

ドキュメントみてもソースを直に見ろしか書いてないのでドキュメントもうちょっとちゃんと書いてくれればいいなと思いました。

  • このエントリーをはてなブックマークに追加
  • Pocket
PAGE TOP ↑