アプリ名の欄に文字を打ち込んで、保存のボタンが問題なく押せたときの安心感を、覚えていらっしゃる方は多いのではないでしょうか。私も新しいアプリを出すたびに、あの瞬間に肩の荷が一つ下りるような気持ちになります。いま思えば、その安心を「名前はもう大丈夫」という意味に取り違えやすかったのかもしれません。
ただ、あの安心感が何について保証してくれているのかは、一度立ち止まって考えておく価値があります。ストアが確かめているのは、同じストアの中で名前が重ならないかどうかです。その名前を世の中で使ってよいかどうかは、別の仕組みの話になります。
ここから、名前を決める前に見ておく場所と、すでに公開したあとで名前を変えたくなったときに「ストアの側で続くもの」と「自分の手で直すもの」を分けて考える手順を書き残します。法律の判断は私にはできませんので、そこは専門家や公的窓口の領分として線を引いておきます。
「名前が取れた」と「名前を使ってよい」は別の話です
Apple の App Store Connect のヘルプには、アプリ名について「2 文字以上 30 文字以内」と書かれています。Apple のレビューガイドライン 2.3.7 にも、ユニークな名前を選ぶこと、名前を 30 文字以内にすること、商標のある語句などをメタデータに詰め込まないことが並んでいます。
ここで読み取れるのは、ストアが求めているのは「重複しないこと」と「ルールの範囲に収まること」だという点です。他人の商標権と自分の名前が衝突しないことまでを、保存ボタンが請け負ってくれているわけではありません。
私はこの違いを、ストアは名前の置き場所を貸してくれるだけで、名前の持ち主を決めてはくれません、と覚えるようにしています。持ち主の話は、商標という別の制度の側にあるのです。
名前を決める前に見る 3 か所
確認の順番は、費用のかからないものから並べています。
| 順番 | 見る場所 | 何を確かめるか | 見落としやすい点 |
|---|---|---|---|
| 1 | J-PlatPat(特許庁所管の INPIT が提供する検索サービス)の商標検索 | 同じ、または似た名前の登録・出願がないか。アプリは第 9 類(ダウンロードできるソフトウェア)や第 42 類で検討されることが多い | 表記だけでなく読み(称呼)が近い名前も確かめる。カタカナとアルファベットの両方で検索する |
| 2 | App Store と Google Play の検索 | 近い名前の既存アプリがないか。ジャンルが近いほど紛らわしくなる | 日本語の検索だけで終えず、英語表記でも検索する |
| 3 | ドメインと SNS のアカウント名 | 公式サイトやサポートページで同じ名前を使えるか | 取れなくても即アウトではないが、あとから名前を揃える手間が増える |
1 番目の結果は、画面を保存しておくことをおすすめします。あとで「あのとき何を見て決めたのか」を自分に説明できるからです。
商標の判断そのものは、似ているかどうかの線引きが専門的になります。迷った名前は、弁理士や特許庁の相談窓口に確かめるのが確実です。私は専門家ではありませんので、ここから先を決めるのは皆さまご自身です。
公開後に名前を変えるとき、公式に書かれていること
すでに公開したあとで名前を変えたくなる場面は、商標の指摘に限りません。ASO の見直しや、アプリの役割が広がったことが理由の場合もあるでしょう。公式の記載から、言える範囲だけを整理します。
| iOS(App Store Connect) | Android(Google Play) | |
|---|---|---|
| 名前の変更 | 審査に提出するまでは編集でき、その後は新しいバージョンを作るとき、またはバージョンの状態が許すときに変更できると記載されている | アプリ作成時の案内に「あとから変更できる」とある。変更の手順はそのヘルプページには書かれていない |
| 文字数 | 30 文字まで | 30 文字まで。全角と半角は同じ 1 文字として数える |
| 変えられない識別子 | Bundle ID。ビルドをアップロードしたあとは変更できない | パッケージ名。「一意で永続的」と記載されている |
識別子が変わらないのですから、ストアの上では同じアプリのまま名前だけが変わる、というのが私の理解です。評価やレビューの扱いまでは、公式のヘルプで私が確かめた範囲には書かれていませんでした。名前を変える前に、お使いのストアのヘルプでご確認いただければと思います。
ストアが続けてくれない部分は、自分の手で拾います
名前を変えるとき、いちばん手間がかかるのはストアの画面ではありません。アプリの中と、アプリの外に散らばっている旧名です。
- ホーム画面に出る名前(Expo の
app.jsonのname) - アプリ内の設定画面や「このアプリについて」の表記
- プライバシーポリシーと利用規約の文面
- スクリーンショットの中の文字
- サポートページ、公式サイト、SNS のプロフィール
このうち、プロジェクトの中にあるものは機械で拾えます。私が使っている短いスクリプトを載せます。
# find_old_name.py — プロジェクト内に残っている旧名を一覧する
import sys
from pathlib import Path
# 検索対象にしない場所(依存物とビルド成果物)
SKIP_DIRS = {"node_modules", ".git", "Pods", "build", ".expo", "dist"}
# 画像などのバイナリは読まない
TEXT_SUFFIXES = {".json", ".js", ".ts", ".tsx", ".md", ".mdx", ".plist",
".xml", ".strings", ".swift", ".kt", ".html", ".txt"}
def scan(root: Path, old_name: str) -> int:
hits = 0
for path in root.rglob("*"):
if any(part in SKIP_DIRS for part in path.parts):
continue
if not path.is_file() or path.suffix not in TEXT_SUFFIXES:
continue
try:
lines = path.read_text(encoding="utf-8").splitlines()
except UnicodeDecodeError:
continue # 文字コードが違うファイルは飛ばす
for no, line in enumerate(lines, 1):
if old_name in line:
hits += 1
print(f"{path.relative_to(root)}:{no}: {line.strip()[:80]}")
return hits
if __name__ == "__main__":
root, old = Path(sys.argv[1]), sys.argv[2]
total = scan(root, old)
print(f"-- {total} 件")使うときは python3 find_old_name.py ./my-app "旧い名前" のように、プロジェクトの場所と旧名を渡します。大文字小文字や全角半角の違う表記は拾えませんので、旧名の別表記ごとに実行していただくのが確実です。
なぜ機械で拾うのかというと、改名の漏れは「気づいた人が直す」では必ず残るからです。設定画面の片隅に旧名が一行だけ残っているのは、公開してからレビューで指摘されて初めて気づくことが多いのです。
私が改名の前に引いている線
ここまで書いてきて、私が守っている原則は一文に収まりました。
名前は、商標の検索結果を一度見てから決めます。ストアに保存できたことは、その代わりになりません。
公開後の改名は、名前を一つ直す作業ではなく、アプリの内側と外側に散らばった旧名を一つずつ辿る作業になります。最初の確認に数分かければ、その作業そのものを避けられる場合があるのです。
名前の見せ方を言語ごとに整える段階まで進んだ方には、「16 言語の ASO をどう組み立てるか」で、名前とサブタイトルの扱いを書いております。
まずは、今ご自身のアプリに付けている名前を J-PlatPat の商標検索に入れて、結果の画面を一枚保存してみていただければと思います。何も出てこなければ安心材料に、何か出てきたら、改名を考えるのが早いうちの方がずっと軽く済みます。