Takahiro Octopress Blog

-1から始める情弱プログラミング

BLEMeasure Ver3.0(iPhoneアプリを申請しました(4))

BLEMeasure Ver3.0の紹介

約1年ぶりに本アプリのバージョンアップに着手しました。
主な改善点・修正点としては下記です。

  • デザイン, UIの変更
  • マルチiBeaconの検知機能の実装
  • iOS8対応
  • iPhone6およびiPhone6 Plus対応
  • バグFix

※現在、アップデート申請中のため、公開されていません。
(公開され次第、合わせてブログを更新する予定です。)
2015/05/28にめでたく公開されました!!
本記事を書いてから、実に1ヶ月もの時間を要したのですが、そこには新たに判明した事柄があったためです。
そこについて本記事に追記させて頂きます。

今回アップデートを行った理由としては、なぜかうまく起動しないという問題があったためです。
少し苦労したのが、手違いで完全に昔のプロジェクトを削除してしまっていたため、初めから作り直したところです。

BLEMeasureの使い方(How to use BLEMeasure)

さて、ここからは審査も見据えて使い方を日本語+拙い(多々間違いのあるであろう)英語で解説していきたいと思います。

iBeacon発信手順(Procedure of advertising iBeacon)
  1. 中央の赤いボタンをタップ(Tap the central red button)
  2. Advertiseボタンをタップ(Tap the advertise button)
  3. STARTボタンをタップ(Tap the start button)

BLEMeasure Procedure1

iBeacon距離計測手順(Procedure of measuring the distance between a peripheral device and a central device)
  1. 中央の赤いボタンをタップ(Tap the central red button)
  2. Measureボタンをタップ(Tap the measure button)

BLEMeasure Procedure2

※ 周りにiBeacon発信端末が見つからない場合は0mと表記されます(If the device can’t find the advertising device, the distance is 0m.)

複数iBeaconの検知手順(Procedure of searching the multi iBeacon)
  1. 中央の赤いボタンをタップ(Tap the central red button)
  2. Searchボタンをタップ(Tap the search button)

※ 周りにiBeaconが見当たらない場合は何も表示されません(You don’t look at the iBeacon list if there aren’t iBeacon around you.)
※ テーブルビューのプルダウンもしくは右上の更新ボタンで周囲のiBeaconを再検索することができます(You can search iBeacon again by pulling down the table view or tapping the update button)

BLEMeasure Procedure3

iBeaconパラメータの設定手順(Procedure of setting the advertising iBeacon parameters)
  1. 中央の赤いボタンをタップ(Tap the central red button)
  2. Settingsボタンをタップ(Tap the settings button)
  3. UUID, major, minorの値を入力して、Saveボタンをタップ(Enter the parameters and tap the save button)

BLEMeasure Procedure4

アプリ関連情報の確認手順(Procedure of confirming the information about the app)
  1. 中央の赤いボタンをタップ(Tap the central red button)
  2. Aboutボタンをタップ(Tap the about button)

BLEMeasure Procedure5

アップデート完了までの道のり

さて、ここからは追記になります。
さらっと審査が通るかと思っていたものの、実に2度の リジェクト を受けました。

リジェクトの理由は、本アプリでも受けていた設定画面のUUID/major/minorの手動変更がiOS Developer Program License Agreementの3.3.1項目に違反するとされたためです。
既存のバージョンで問題視されていなかった項目だったため、その旨を伝えたり、major/minorの手動変更のみを削除したり(UUIDのみの手動変更を許可したり)したものの、同様の理由でリジェクトされました。

因みに同項目では、
Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs.
と記されています。

要は、Public APIがAppleの意図せぬ形で使われている or Private APIを使っている場合に引っかかる項目ということです。
他に手動変更を許可しているアプリはもうアップデートできないんじゃないかな…なんて思ってしまいました。

専用のBeacon機器を出している会社さんの場合はOKなのかは気になるところです。
これができないとなると、iBeaconが普及し得ないと思いますし…。

本日は以上です。

Comments