技術報告一覧

[iOS] iphoneアプリ申請時の準備注意点 リジェクトされずに最短で通過するには

概要

いろいろなサイトでアプリ申請時の注意事項や準備等を紹介されていますが、それらサイトを引用させていただきながら手法をまとめてみましたのでお伝え致しますね。先日お客さんに申請をリジェクトされずに最短で通すにはという相談をされたので、色々調査した報告も兼ねています。

1.法人と個人で異なる

【個人】

法的な氏名と連絡先情報。登録した法的な氏名が App Store 上で「販売者」として表示されます。

購入用の有効なクレジットカード。

ご本人であることを証明する追加的な本人確認書類の提出をお願いする場合があります。

【法人】

Apple Developer Program の法的な契約書に対して企業/組織を拘束する法的権限。

登録された法人名。この法人名が App Store 上で「販売者」として表示されます。DBA、架空事業名、商号、支店名は受け付けておりません。

企業の主要な事業所または本社の住所。

法人に割り当てられた D-U-N-S Number。購入用の有効なクレジットカード。

D-U-N-S Number申請は
https://developer.apple.com/jp/support/ios/D-U-N-S.php

世界の企業を一意に識別できる企業コード

2.申請の主な必須項目

https://qiita.com/knife0125/items/5b2fa28d651c5f4de52e
上記サイトを引用

説明 —– アプリについての説明を記述します。App Storeの他のアプリの説明・Descriptionから記述形式を参考にして、自身のアプリの解説を記述します。

キーワード —– AppStore検索で検索された際にひっかかって欲しいキーワードをここで設定します

サポートURL —– アプリに関するLPなどのプロモーションページ・サポートページなどのURLを記入します

Appアイコン —– AppStoreで表示されるアプリのアイコン画像をここで挿入します。1024×1024サイズの画像を登録します(他のサイズだと受け付けられません)。

バージョン —– アプリのバージョンを記入します。初回のリリースの時は1.0を記入するのが一般的です。ここも重要なのは、XCodeでアップロードしようとしているアプリのVersionと揃えておくことが必要です(確か、揃っていないと申請できなかったと思います)。

カテゴリ —– AppStoreにアプリを登録するカテゴリを登録します。学習系のアプリを作ったのであれば、「教育」カテゴリのアプリとして登録するなどを行います。

レーティング —– アプリのレーティングを設定します。セクシーな画像を扱うアプリであれば、12歳以上を対象とする、のような形でレーティングを設定します。

Copyright —– 作成されたアプリの著作権について記載します。その下部には著作権者の情報を入力します

3.リジェクト理由

引用元:https://patto-cms.jp/blog/reasons_of_reject_of_ios_apps/

1.情報不足
ログインが必要なのにログイン情報が提供されていないなど、
アプリを利用する上で必要な情報が不足している場合です。

2.バグ(不具合)がある
バグがあれば当然リジェクトされます。

3.クオリティが低い
Appleはシンプルで洗練された、クリエイティブなインターフェースを求めるため、
UIが複雑であったり、クオリティが低い場合はリジェクトされます。
機能が少なかったり、コンテンツが少ない場合も引っかかるので気をつけましょう。

4.レーティング(等級分けや数値化)が不適切
最近特に厳しくなっている印象です。
今まで申請が通っていたアプリでもコンテンツ配信系などはたまたまチェックされた
記事によってリジェクトされるケースもあります。
引っかかりそうなコンテンツがある場合は審査期間に余裕を持ちましょう。

5.他のモバイルプラットフォームについて言及
「Android版あります」の文言やリンクがあるだけでもリジェクトされます。
アプリ説明文やスクリーンショット、キーワードなどに他のプラットフォームが入っていてもNGです。
「Android、GooglePlay」などの他のプラットフォームの名前を使わないように気をつけましょう。
Androidの端末画像をスクリーンショットに使っただけでもリジェクトされたケースもあるようです。

6.落ちる
操作中にクラッシュする箇所があるとダメです。

7.アプリの内容や機能に関係ない説明文、スクリーンショット

実際には無い機能などを説明文に書いている場合です。
逆に隠し機能など、存在する機能についての説明がない場合もNGです。
スクリーンショットがアプリと合っていない場合にもリジェクトされるようです。

8.誤り、虚偽、誤解をまねく説明を含む
有名企業や有名サービスのアプリを作る際のネーミングには十分注意しましょう。
アイコンも同様です。
Twitter系アプリでアイコンに鳥を入れた場合にもこの理由でリジェクトをされたケースもあるようです。

9.アプリ名が不適切

AppStoreとiPhone上で表示されるタイトルが似ていない場合に混乱するのでNGということです。
また、アプリタイトルにキーワードと見なされる文言が入っていたり、
キーワード設定と重複している文言が入っている場合もリジェクトされます。

どの部分がキーワードと見なされたかは指摘してくれるようです。

10.必然性の無い個人情報を送信する
以前はTOP10に入っていなかった項目なので、最近特に厳しくなっている項目です。
メールアドレス、性別、生年月日などの登録を必須にしている場合には注意が必要です。
アプリ内容によりますが、どんなに必然性を説明しても
任意項目に変更しなければ通らないケースが多いようです。

4.その他リジェクト理由

.メールによるユーザーの認証がある場合
メールアドレスを入力させ、送付したメールからユーザー登録をさせる方法は、ユーザー体験(操作性)

が悪いとみなされ、リジェクト(却下)の対象となります。
■対処法

・メールアドレス認証のフォームを除外しましょう。

.SSL対応をしていないウェブページへ遷移している場合
今後、HTTPSによるデータ暗号化の対応がなされていないウェブページを使用しているアプリは、安全性に欠けるとしてリジェクト(却下)の対象になる可能性があります。

アプリ内から回遊できる全てのウェブページが、審査対象となります。

■対処法

・アプリ内に入れるウェブページのSSL対応をしましょう。

・または該当するウェブページをアプリ内から削除しましょう。

上記の規定は、当初2017年1月より適応予定でしたが、現時点では延期されています。

ただし、今後セキュリティ面での審査が厳しくなる可能性は十分にありますので、あらかじめ対応しておくことをお勧めいたします。

https://support.yappli.co.jp/hc/ja/articles/115004598588-%E6%9C%AA%E7%84%B6%E3%81%AB%E9%98%B2%E3%81%94%E3%81%86-%E3%82%A2%E3%83%97%E3%83%AA%E3%81%8C%E3%83%AA%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E3%81%95%E3%82%8C%E3%82%8B3%E3%81%A4%E3%81%AE%E5%BF%85%E9%A0%88%E5%95%8F%E9%A1%8C

※この情報は2017年6月時点のものです。

5.輸出コンプライアンス

申請の最後のほうに以下のアンケートがあり回答しだいでは時間がかかってしまうので
念のため記載

第 1 問: あなたの製品は、暗号化を使用するように設計されていますか?
または、暗号化を含むか組み込んでいますか?

YES

第 2 問: あなたの製品は、第 2 部、カテゴリ 5 に記載の免除資格をすべて満たしていますか?

YES

第 3 問: あなたの製品は、独自の暗号化アルゴリズム、
または国際標準化団体 (IEEE、IETF、ITU など)
の標準化認定を受けていない暗号化アルゴリズムを実装していますか?

NO

第 4 問: あなたの製品は、Apple OS の暗号化を使用またはアクセスする代わりに
標準暗号化アルゴリズムを実装しているか、Apple OS の暗号化の使用または
アクセスに加えて標準暗号化アルゴリズムを実装していますか?

NO

第 5 問: フランスで製品をリリースしますか?

そのまま (NO)

引用元:https://www.ateliee.com/archives/3363

 



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。


 




[JS] JavaScript の const

constとは定数のことです
定数とは、上書きできない値です。 固定値に使用できます。

但し
jshint に対するコメントがない場合、jshint が警告を出します。

警告を回避するためには

constの前にコメントを入れてあげましょう。

 

※JSのconstはECMAScript 6 から使用できます。



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。


 




[iOS] Firebase トピックを使用したPUSH通知

Firebaseのcloudmessagingserviceの機能として

PUSH通知がありますが、主に3つの単位で送ることができます。

1.該当アプリがインストールされた端末全て

2.アプリ起動時発行したアクセストークンをキーに特定の端末へ

3.Firebase上で作成したトピック単位

このトピックというのがいまいちピンを来ませんので解説を行います。

トピックは、任意のグループのことです。男性、女性というグループを作ってその下に

端末を所属させることができるといったイメージでよいかと思います。

ポイントは、任意のトピックの作成方法、FireBase上でないと作成できないのか。

トピックへ端末を参加させる方法、特定のトピックに所属している端末へ

PUSH通知する方法。あたりでしょうか。

手法としましては、

例えば、無料メンバーだけに対して、PUSH通知を送りたい場合、

1)サーバーにDBがある場合、

DBに以下を登録

・無料メンバーのみのトピック:muryou_topic

・muryou_topicに所属するユーザー

2)アプリロード時にサーバーより、以下取得

・ユーザー情報を取得

・自分が所属するトピック情報を取得

取得したトピック名を端末に登録する。(※)

3)サーバープログラム(PHP、JAVA、RUBY等)でPUSH通知

1.TOPIC制御の用意

クライアント側で作成できるようです。

2.所属するトピックを端末に登録(※)

クライアント端末起動時に以下のコードをより、自分のTOKENをトピックに登録します。

3.特定TOPICへの通知方法

サーバーよりPHPを使用して以下のコードで実行します。


 



メルマガ登録をお願いします。

素敵な?情報がいつもあなたに届くようになります。(itmnewsの記事が届きます。)お役に立つかどうかわかりませんが頑張りますっ。登録してみてください。