From 30a4a9ffc7c55723e1eee220993b7ffd8bba23e1 Mon Sep 17 00:00:00 2001 From: klaus Date: Tue, 11 Aug 2026 17:58:56 +0900 Subject: [PATCH] =?UTF-8?q?feat(i18n):=20=EC=9D=BC=EB=B3=B8=EC=96=B4=20?= =?UTF-8?q?=EB=A6=AC=EC=86=8C=EC=8A=A4=EB=A5=BC=20=EB=B0=98=EC=98=81?= =?UTF-8?q?=ED=95=9C=EB=8B=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/res/values-ja/strings.xml | 134 ++-- .../plan-task.md | 232 ++++-- .../prd.md | 29 +- .../resource-mapping.md | 741 +++++++++--------- 4 files changed, 638 insertions(+), 498 deletions(-) diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index e8f9c053..e6657869 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -123,7 +123,7 @@ パスワードをお忘れですか? ボイスオンは初めてですか?今すぐ登録しましょう。 利用規約 - 個人情報収集および利用同意 + 個人情報の収集・利用への同意 (必須) パスワード再設定 登録されたメールアドレスに\n仮パスワードを送信します。 @@ -146,9 +146,9 @@ ホーム コンテンツ - チャット + トーク ライブ - マイ + マイページ たった今 %1$d分前 %1$d時間前 @@ -160,7 +160,7 @@ 新しいチャット まだ会話がありません。\nクリエイターと話してみましょう。 まだ会話がありません。\nAIクリエイターと話してみましょう。 - まだ会話がありません。\n好きなクリエイターにメッセージを送ってみましょう。 + まだメッセージがありません。\n好きなクリエイターにメッセージを送ってみましょう。 チャットルームに接続できませんでした On Air 配信中のライブをすべて見る @@ -189,24 +189,24 @@ 配信開始から%1$d時間%2$d分が経過しました。入室後30分以内に配信が終了する可能性があります。 決済して入室 ライブが作成されました。 - 所持順 - 全体 - クリエイターがライブを準備中です。\n楽しみにお待ちください! + 保有順 + すべて + クリエイターがライブを準備しています。\nお楽しみに! ライブを読み込めませんでした。 再試行 - ライブを始める - クリエイターがオーディオを準備中です。\n楽しみにお待ちください! + ライブを開始 + クリエイターがオーディオを準備しています。\nお楽しみに! オーディオを読み込めませんでした。 オーディオを投稿 - 全体 + すべて 全オーディオの%1$s%%を所持しています。 %1$s/%2$s件 - クリエイターがシリーズを準備中です。\n楽しみにお待ちください! + クリエイターがシリーズを準備しています。\nお楽しみに! シリーズを読み込めませんでした。 再試行 - 連載中 + 連載 完結 - 全体 + すべて 全%1$s話 %1$s/%2$s話 %1$s%% @@ -228,7 +228,7 @@ フォロー中 フォロー解除 %1$sさんのフォロー를解除しますか? - + すべて 通知 通知はありません。 売上 @@ -295,7 +295,7 @@ 販売数 コメント数 いいね - Voice Onだけで! + VOICE ON限定 新着オーディオ New&Hot 無料オーディオ @@ -304,18 +304,18 @@ おすすめオーディオ ライブ 最近活動したクリエイター - 最近デビューしたクリエイター - クリエイターと話しましょう! + 新着クリエイター + クリエイターと話す のクリエイター - 最近応援が多いクリエイター + 最近応援の多いクリエイター 人気コミュニティ - 最近のチャット + 最近のトーク 今月のスケジュール - 最近のお知らせ + 最新情報 On Air - グラビア + フォト %1$d位 - %1$sさんが今週のランキング%2$sに入りました! + %1$sが今週のランキングで%2$sにランクイン! %1$sが今週のランキング%2$sに入りました! フォロー中のお知らせはまだありません。\n気になるクリエイターをフォローしてみましょう。 ライブ @@ -337,8 +337,8 @@ オーディオ シリーズ コミュニティ - ファンTalk - 応援 + ファントーク + サポート フォロワー %1$s人 トークする DMを送る @@ -348,63 +348,63 @@ ブロックしました。 配信中 最新オーディオ - 応援 + サポート お知らせ 予定 オーディオ シリーズ コミュニティ - ファンTalk + ファントーク 紹介 - 活動 + アクティビティ SNS %1$d件 · %2$s %1$s · いいね %2$d · コメント %3$d - リスト型 - サムネイル型 - クリエイターがコミュニティを準備中です。\n楽しみにお待ちください! + リスト + グリッド + クリエイターがコミュニティを準備しています。\nお楽しみに! コミュニティを読み込めませんでした。 再試行 お知らせ コミュニティ 返信 - コメントを入力してください - 返信を入力してください + コメントを入力 + 返信を入力 コメント %1$s この投稿ではコメントを利用できません。 投稿を読み込めません。 購入済み %1$s · 全体 %2$d 最初の応援を\n待っています! - 応援を残す - まだ応援がありません。\n最初にクリエイターを応援してみましょう! + ファンレターを送る + まだファンレターがありません。\n最初のファンレターを送ってみましょう! ファントークを読み込めませんでした。 再試行 - 全体 + すべて 通報 - 編集する - 削除する + 編集 + 削除 デビュー %1$s(%2$s) - ライブ総配信数 + ライブ配信回数 %1$d回 ライブ累計時間 %1$d時間 - ライブ累計参加者 + ライブ累計参加者数 %1$d人 オーディオ数 %1$d件 シリーズ数 %1$d件 準備中です。 - 応援する + サポートする すべて - 応援ランキング + サポートランキング すべて見る - 応援する + サポートする 応援履歴を読み込めませんでした。 再試行 - 最初にクリエイターを\n応援してみましょう! + まだサポートがありません。\n最初のサポートをしてみましょう! 応援履歴がありません %1$sCAN %1$dCANを応援しました。 @@ -478,8 +478,8 @@ 送信 送信中 入力終了 - 入力を終了しますか?\n今離れると、入力した内容は保存されません。 - 続けて書く + 入力を終了しますか?\n終了すると、入力内容は保存されません。 + 続ける 終了 @string/common_error_unknown 望まない商業コンテンツまたはスパム @@ -504,7 +504,7 @@ おすすめキャラ N 新着キャラ一覧 - + すべて キャラクター 作品別 @@ -516,7 +516,7 @@ ※ 保存していない受信メッセージは3日後に自動削除されます。 受信メッセージ 送信メッセージ - コレクション + ライブラリ メッセージがありません。\n友達と交流してみましょう! テキストメッセージを読み込み中。 ボイスメッセージを読み込み中。 @@ -663,7 +663,7 @@ 字幕 OFF 字幕 ON 背景 OFF - 告知 + お知らせ メニュー表 リスナー 新しいチャット @@ -716,7 +716,7 @@ R-18 現在のライブ・ハートランキング 合計 - + すべて 現在のライブ・ギフトランキング 一般 @@ -729,7 +729,7 @@ ギフト履歴 ギフト履歴がありません。 閉じる - ギフトする + サポートする チャージ シークレットミッション 10 @@ -756,7 +756,7 @@ メニュー 3 メニュー表を作成してください。 入室メッセージ - 修正する + 編集 メニュー1を先に設定してください メニュー1と2を先に設定してください キャンセル理由を入力してください。 @@ -831,7 +831,7 @@ 年齢制限 全年齢 性別制限 - 全体 + すべて 男性のみ 女性のみ チケット価格 @@ -930,7 +930,7 @@ 決済CAN リワードCAN CAN - チャージする + チャージ チャージ PG @@ -973,7 +973,7 @@ サポート ボイスオンサポート よくある質問 - + すべて TALK問い合わせ ブロックリスト @@ -992,7 +992,7 @@ デビュー前 ライブ総回数 ライブ累積時間 - ライブ累積参加者 + ライブ累計参加者数 登録コンテンツ数 SNS 公開予定 @@ -1025,7 +1025,7 @@ 返信を書く 既存の返信が新しい返信に置き換えられます。\n修正しますか? フォロワーリスト - + すべて 無効なリクエストです。\n恐れ入りますが、もう一度お試しください。 シリーズ 全%1$d話 @@ -1038,7 +1038,7 @@ 今月(昨日まで) CAN \u0020CAN - + すべて %1$s %2$s 週間 @@ -1083,7 +1083,7 @@ 投稿修正 修正 通知 - + すべて なし フォロー解除 %1$sCANで予約 @@ -1095,7 +1095,7 @@ CANチャージ ポイントリワード 最近聴いた - コレクション + ライブラリ ブロックリスト モーニングコール お知らせ @@ -1191,7 +1191,7 @@ あなたは18歳以上ですか? このコンテンツは18歳以上のみ利用できます! センシティブなコンテンツを表示するには「センシティブなコンテンツ表示」スイッチをオンにしてください。 - + すべて 男性向け 女性向け 通知設定 @@ -1314,8 +1314,8 @@ オーディオ選択 新しいコンテンツを投稿する 最新順 - 価格が高い順 - 価格が低い順 + 高い順 + 安い順 人気順 表示するコンテンツがありません。 Myライブラリ @@ -1335,13 +1335,13 @@ コンテンツをレンタルしますか? コンテンツを購入しますか? + - + すべて 無料 無料 公開予定 ポイント - 所持中 + 保有中 レンタル中 Sold Out + 新しいプレイリストを作成 @@ -1400,7 +1400,7 @@ 次の話 オーディオ共有 共有 - ギフト + サポート 限定版 残り数量 購入者 @@ -1481,7 +1481,7 @@ 日付選択 コンテンツ選択 所持中のコンテンツがありません。\n先にマーケットで購入してください。 - 所持中 + 保有中 レンタル中 @@ -1505,7 +1505,7 @@ 人気短編 人気クリエイター もっと見る > - 検索ワードを入力 + キーワードを入力 人気シリーズ モーニングコール ASMR diff --git a/docs/20260811_일본어_string_resource_반영/plan-task.md b/docs/20260811_일본어_string_resource_반영/plan-task.md index 6f209267..678b912a 100644 --- a/docs/20260811_일본어_string_resource_반영/plan-task.md +++ b/docs/20260811_일본어_string_resource_반영/plan-task.md @@ -5,8 +5,9 @@ | 상태 | 계획 작성 완료 | | 작성일 | `2026-08-11` | | 요구사항 기준 | `docs/20260811_일본어_string_resource_반영/prd.md` | +| 매핑표 | `docs/20260811_일본어_string_resource_반영/resource-mapping.md` | | API 기준 | API 변경 없음 | -| 현재 Phase | Phase 1 매핑 확정 대기 | +| 현재 Phase | 전체 완료 | | 현재 활성 Goal | 없음 | ## 목표 @@ -17,8 +18,8 @@ | Phase | 상태 | 완료 Task | 활성/다음 Goal | 차단 또는 남은 조건 | |---:|---|---:|---|---| -| 1 | 대기 | `0/2` | `P1-T1` | 확정 매핑표 작성 필요 | -| 2 | 대기 | `0/1` | `P2-T1` | `P1-GATE` 완료 필요 | +| 1 | 완료 | `2/2` | 완료 | 없음 | +| 2 | 완료 | `1/1` | 완료 | 없음 | - 동시에 하나의 미완료 goal만 운용한다. - 완료된 Task와 검증 기록은 되돌리거나 삭제하지 않는다. @@ -31,6 +32,7 @@ - `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv` 기준 KR/JP 쌍 분석. - `app/src/main/res/values/strings.xml`의 KR 값과 resource key 후보 대조. - `app/src/main/res/values-ja/strings.xml`의 기존 JP 값과 CSV JP 값 차이 확인. +- `docs/20260811_일본어_string_resource_반영/resource-mapping.md` 생성과 상태 갱신. - 확정된 key에 한해 `app/src/main/res/values-ja/strings.xml` 수정. - Android resource XML 빌드 검증. @@ -41,7 +43,7 @@ - layout, Kotlin, API, navigation, ViewModel 변경. - 신규 dependency 추가. - `app/src/androidTest`, 기기·에뮬레이터 조작, 스크린샷 QA. -- CSV JP 문구를 임의 재번역하는 작업. +- CSV JP 문구를 임의 재번역하는 작업. JP 오탈자 의심 항목은 CSV 값을 그대로 쓰고 최종 리포트에 확인 필요로 기록한다. ## 기술적 제약 @@ -49,7 +51,11 @@ - 리소스 파일: `app/src/main/res/values/strings.xml`, `app/src/main/res/values-ja/strings.xml`. - 기준 CSV: `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv`. - CSV에는 resource key가 없으므로 한국어 값이 정확히 일치하는 후보만 자동 매핑 대상으로 삼는다. -- 같은 KR 문구가 여러 resource key에 있으면 자동 덮어쓰지 않고 후보 목록에서 확정한다. +- `values/strings.xml`에 exact match 또는 Android placeholder/suffix 대응 한국어 리소스가 없으면 신규 key를 만들지 않고 `제외`한다. +- 같은 KR 문구가 여러 resource key에 있으면 모든 후보를 기록하고, 기존 JP가 CSV JP와 다르면 CSV JP를 우선 반영한다. +- JP 오탈자 의심 항목은 key가 있으면 CSV 값을 그대로 반영하고 최종 리포트에 기록한다. key가 없으면 반영하지 않는다. +- `{{...}}`, `{...}`, `n%` 치환 문구는 Android `%1$s`, `%1$d`, suffix resource와 대응되는 경우 후보로 포함한다. +- `resource-mapping.md`의 `
`은 표시용이며 `values-ja/strings.xml`에는 literal `
`이 아니라 `\n`으로 반영한다. - `%1$s`, `%1$d`, `%%`, `\n`, XML escape, `@string/...` 참조를 깨지 않는다. - 로직 변경이 없으므로 신규 unit test는 기본 작성하지 않는다. - 검증은 `./gradlew :app:assembleDebug`를 기본으로 하고, 리소스 lint 확인이 필요하면 `./gradlew :app:lintDebug`를 추가한다. @@ -73,7 +79,7 @@ **Goal 실행 `P1-T1`:** CSV KR 문구와 `values/strings.xml`의 한국어 resource key 후보를 대조한다. - **시작 조건:** `kr_jp_string_resource.csv`, `app/src/main/res/values/strings.xml` 존재. -- **완료 증거:** 후보 대조 결과가 `plan-task.md`의 Progress에 기록되고, 중복 KR 문구가 별도 표시된다. +- **완료 증거:** 후보 대조 결과가 `resource-mapping.md`에 기록되고, 중복 KR 문구가 별도 표시된다. - **범위 밖:** `values-ja/strings.xml` 수정, CSV 문구 수정. - **TDD 예외 사유:** production 동작을 변경하지 않는 read-only 대조 Task다. - **대체 검증 방법:** CSV KR 값과 `values/strings.xml` string body를 대조하고, exact match 수와 중복/미매칭 예시를 Progress에 기록한다. @@ -82,26 +88,28 @@ - Read: `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv` - Read: `app/src/main/res/values/strings.xml` +- Create: `docs/20260811_일본어_string_resource_반영/resource-mapping.md` - Modify: `docs/20260811_일본어_string_resource_반영/plan-task.md` **Interfaces:** - Consumes: CSV `KR`, `JP` 컬럼과 Android `...` 값. -- Produces: `P1-T2`가 사용할 KR 문구별 resource key 후보 목록. +- Produces: `P1-T2`가 사용할 `resource-mapping.md`의 KR 문구별 resource key 후보 목록. -- [ ] CSV의 `KR`, `JP` 행을 파싱한다. -- [ ] `values/strings.xml`의 `` 값을 key와 함께 추출한다. -- [ ] CSV KR과 한국어 resource 값을 exact match로 대조한다. -- [ ] 같은 KR 문구가 여러 key에 매칭되는 항목을 중복 후보로 표시한다. -- [ ] 매칭되지 않은 CSV KR 행은 신규 key 추정 없이 미매칭 후보로 기록한다. -- [ ] Progress에 exact match 수, 중복 후보 수, 미매칭 후보 수와 대표 예시를 남긴다. +- [x] CSV의 `KR`, `JP` 행을 파싱한다. +- [x] `values/strings.xml`의 `` 값을 key와 함께 추출한다. +- [x] CSV KR과 한국어 resource 값을 exact match로 대조한다. +- [x] 같은 KR 문구가 여러 key에 매칭되는 항목을 중복 후보로 표시한다. +- [x] 매칭되지 않은 CSV KR 행은 신규 key 추정 없이 미매칭 후보로 기록한다. +- [x] `resource-mapping.md`를 생성하고 `CSV 행`, `KR`, `JP`, `resource key 후보`, `기존 JA`, `상태`, `비고` 컬럼으로 후보 목록을 기록한다. +- [x] Progress에 exact match 수, 중복 후보 수, 미매칭 후보 수와 대표 예시를 남긴다. #### Task 1.2 일본어 기존값 충돌과 보류 항목 확정 **Goal 실행 `P1-T2`:** `values-ja/strings.xml`의 기존 JP 값과 CSV JP 값을 대조해 반영/보류/제외 결정을 확정한다. - **시작 조건:** `P1-T1` 완료. -- **완료 증거:** 확정 반영 목록과 보류 목록이 `plan-task.md` Progress 또는 Decision Log에 기록된다. +- **완료 증거:** 확정 반영 목록과 보류 목록이 `resource-mapping.md`에 기록되고, 요약이 `plan-task.md` Progress 또는 Decision Log에 남는다. - **범위 밖:** 확정되지 않은 key 반영, 일본어 재번역. - **TDD 예외 사유:** production 동작을 변경하지 않는 read-only 대조와 의사결정 Task다. - **대체 검증 방법:** 기존 JP 값, CSV JP 값, placeholder 차이, 줄바꿈 차이, 오탈자 의심 항목을 대조한다. @@ -109,27 +117,28 @@ **Files:** - Read: `app/src/main/res/values-ja/strings.xml` +- Modify: `docs/20260811_일본어_string_resource_반영/resource-mapping.md` - Modify: `docs/20260811_일본어_string_resource_반영/plan-task.md` **Interfaces:** -- Consumes: `P1-T1`의 resource key 후보 목록. +- Consumes: `P1-T1`이 만든 `resource-mapping.md`의 resource key 후보 목록. - Produces: `P2-T1`이 수정할 확정 key/value 목록. -- [ ] 후보 key마다 기존 `values-ja/strings.xml` 값을 확인한다. -- [ ] CSV JP와 기존 JP가 같은 항목은 변경 없음으로 분류한다. -- [ ] CSV JP와 기존 JP가 다른 항목은 변경 후보로 분류한다. -- [ ] KR placeholder와 JP placeholder가 다른 항목은 보류한다. -- [ ] CSV JP 오탈자 의심 항목은 보류하고 Decision Log에 사용자 확인 필요로 남긴다. -- [ ] `@string/...` 참조는 참조를 풀어야 하는 명확한 근거가 없으면 보류한다. -- [ ] 반영 대상 key, 보류 대상 key, 제외 대상 key를 Progress에 기록한다. +- [x] 후보 key마다 기존 `values-ja/strings.xml` 값을 확인한다. +- [x] CSV JP와 기존 JP가 같은 항목은 변경 없음으로 분류한다. +- [x] CSV JP와 기존 JP가 다른 항목은 변경 후보로 분류한다. +- [x] KR placeholder와 JP placeholder가 다른 항목은 보류한다. +- [x] CSV JP 오탈자 의심 항목은 key가 있으면 그대로 반영하고, key가 없으면 제외한 뒤 Decision Log에 사용자 확인 필요로 남긴다. +- [x] `@string/...` 참조는 참조를 풀어야 하는 명확한 근거가 없으면 보류한다. +- [x] 반영 대상 key, 보류 대상 key, 제외 대상 key를 `resource-mapping.md`에 기록하고 요약을 Progress에 남긴다. ### 완료 조건 -- [ ] `P1-T1`, `P1-T2`의 체크박스와 완료 증거가 모두 충족됐다. -- [ ] 확정 반영 대상 key 목록이 존재한다. -- [ ] 보류 항목은 이유와 후속 결정 주체가 기록됐다. -- [ ] 확정되지 않은 항목을 Phase 2에 넘기지 않았다. +- [x] `P1-T1`, `P1-T2`의 체크박스와 완료 증거가 모두 충족됐다. +- [x] `resource-mapping.md`에 확정 반영 대상 key 목록이 존재한다. +- [x] 보류 항목은 이유와 후속 결정 주체가 기록됐다. +- [x] 확정되지 않은 항목을 Phase 2에 넘기지 않았다. ### 검증 방법 @@ -143,11 +152,12 @@ 검증 기준: -- [ ] 확정 반영 목록의 모든 key는 `values/strings.xml`에 존재한다. -- [ ] 확정 반영 목록의 모든 key는 `values-ja/strings.xml`에 존재하거나 신규 추가 필요로 명시됐다. -- [ ] 확정 반영 목록의 JP 값은 CSV JP에서 온 값이다. -- [ ] placeholder와 줄바꿈 형식이 Android XML에 맞게 표현될 수 있다. -- [ ] 보류 항목은 Phase 2 수정 목록에서 제외됐다. +- [x] 확정 반영 목록의 모든 key는 `values/strings.xml`에 존재한다. +- [x] 확정 반영 목록의 모든 key는 `values-ja/strings.xml`에 존재하거나 신규 추가 필요로 명시됐다. +- [x] 확정 반영 목록의 JP 값은 CSV JP에서 온 값이다. +- [x] `resource-mapping.md`의 모든 행은 `반영`, `보류`, `제외`, `변경 없음` 중 하나의 상태를 가진다. +- [x] placeholder와 줄바꿈 형식이 Android XML에 맞게 표현될 수 있다. +- [x] 보류 항목은 Phase 2 수정 목록에서 제외됐다. ## Phase 2 일본어 resource 반영 @@ -173,25 +183,26 @@ - Modify: `app/src/main/res/values-ja/strings.xml` - Reference: `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv` +- Reference: `docs/20260811_일본어_string_resource_반영/resource-mapping.md` - Modify: `docs/20260811_일본어_string_resource_반영/plan-task.md` **Interfaces:** -- Consumes: `P1-GATE`에서 승인된 key/value 목록. +- Consumes: `P1-GATE`에서 승인된 `resource-mapping.md`의 `반영` 상태 key/value 목록. - Produces: Android 일본어 locale에서 사용할 확정 JP string resource. -- [ ] **RED 대체 확인:** 수정 전 `./gradlew :app:assembleDebug`를 실행해 baseline resource 상태를 확인한다. -- [ ] **GREEN:** 확정 key만 `values-ja/strings.xml`에서 CSV JP 값으로 수정한다. -- [ ] **GREEN 확인:** `./gradlew :app:assembleDebug`를 실행해 Android resource 빌드가 통과하는지 확인한다. -- [ ] **REFACTOR:** 이번 Task가 만든 XML escape, placeholder, 줄바꿈 문제만 정리하고 `./gradlew :app:assembleDebug`를 다시 실행한다. -- [ ] 필요 시 `./gradlew :app:lintDebug`를 실행하고 결과를 Progress에 기록한다. +- [x] **RED 대체 확인:** 수정 전 `./gradlew :app:assembleDebug`를 실행해 baseline resource 상태를 확인한다. +- [x] **GREEN:** 확정 key만 `values-ja/strings.xml`에서 CSV JP 값으로 수정한다. +- [x] **GREEN 확인:** `./gradlew :app:assembleDebug`를 실행해 Android resource 빌드가 통과하는지 확인한다. +- [x] **REFACTOR:** 이번 Task가 만든 XML escape, placeholder, 줄바꿈 문제만 정리하고 `./gradlew :app:assembleDebug`를 다시 실행한다. +- [x] 필요 시 `./gradlew :app:lintDebug`를 실행하고 결과를 Progress에 기록한다. ### 완료 조건 -- [ ] `values-ja/strings.xml` diff가 확정 key에만 한정됐다. -- [ ] `%1$s`, `%1$d`, `%%`, `\n`, XML escape가 깨지지 않았다. -- [ ] 보류 항목은 반영되지 않았다. -- [ ] Gradle resource 빌드 검증 결과가 Progress에 기록됐다. +- [x] `values-ja/strings.xml` diff가 확정 key에만 한정됐다. +- [x] `%1$s`, `%1$d`, `%%`, `\n`, XML escape가 깨지지 않았다. +- [x] 보류 항목은 반영되지 않았다. +- [x] Gradle resource 빌드 검증 결과가 Progress에 기록됐다. ### 검증 방법 @@ -207,7 +218,7 @@ ./gradlew :app:assembleDebug ``` -**Expected:** exit code 0, Android resource XML 파싱 성공, debug APK assemble 성공. +**Expected:** exit code 0, Android resource XML 파싱 성공, debug APK assemble 성공. 2026-08-11 최종 실행 결과 `BUILD SUCCESSFUL in 10s`. 필요 시 추가 검증: @@ -215,7 +226,7 @@ ./gradlew :app:lintDebug ``` -**Expected:** exit code 0 또는 이번 resource 변경과 무관한 기존 lint 이슈만 보고. +**Expected:** exit code 0 또는 이번 resource 변경과 무관한 기존 lint 이슈만 보고. 2026-08-11에는 XML string resource 변경이며 `assembleDebug`와 XML parse가 통과해 실행하지 않았다. ## 실행 순서와 의존성 @@ -244,7 +255,7 @@ P1-T1 -> P1-T2 -> P1-GATE -> P2-T1 -> P2-GATE ## 의사결정 및 중단 규칙 - PRD와 plan-task가 충돌하면 PRD Decision Log를 우선하고 plan-task를 먼저 갱신한다. -- CSV JP에 오탈자 의심이 있으면 임의 수정 또는 반영하지 않고 보류한다. +- CSV JP에 오탈자 의심이 있으면 임의 수정하지 않는다. key가 있으면 그대로 반영하고 최종 리포트에 기록하며, key가 없으면 제외한다. - placeholder가 맞지 않으면 해당 key는 보류하고 사용자 확인 대상으로 남긴다. - `values-ja/strings.xml`에 key가 없으면 신규 추가 여부를 사용자에게 확인한다. - Gradle 검증 실패가 발생하면 실패한 resource key만 확인하고 관련 없는 기능 수정은 하지 않는다. @@ -256,7 +267,7 @@ P1-T1 -> P1-T2 -> P1-GATE -> P2-T1 -> P2-GATE ### 문서 작성 1차 실행 — 2026-08-11 - 상태: 완료 -- 무엇을: PRD와 계획문서 초안을 작성했다. +- 무엇을: PRD와 계획문서 초안을 작성하고, 매핑표 산출물을 `resource-mapping.md` 별도 파일로 만들도록 보정했다. - 왜: 사용자가 CSV 기반 일본어 string resource 반영 전에 모호한 사항을 확인하고 PRD/계획문서만 생성하라고 요청했다. - 어떻게: - `docs/sample/sample-prd.md` 확인 — PRD 구조 확인. @@ -267,12 +278,127 @@ P1-T1 -> P1-T2 -> P1-GATE -> P2-T1 -> P2-GATE - 남은 항목: 실제 매핑 확정과 resource 반영은 아직 수행하지 않음. - 다음 행동: 사용자가 구현을 요청하면 `P1-T1`부터 실행한다. +### 문서 보정 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: 매핑표 저장 위치를 `docs/20260811_일본어_string_resource_반영/resource-mapping.md`로 명시했다. +- 왜: 매핑 행이 많아 `plan-task.md` Progress에만 남기면 검토와 승인 추적이 어렵다. +- 어떻게: + - `prd.md` — 매핑표 경로, 처리 흐름, 요구사항 수용 기준, Decision Log에 `resource-mapping.md`를 반영. + - `plan-task.md` — Task 1.1에서 `resource-mapping.md`를 생성하고 Task 1.2에서 상태를 갱신하도록 Files, 완료 증거, 체크박스, Gate를 보정. +- 남은 항목: 실제 `resource-mapping.md` 생성과 매핑 행 작성은 `P1-T1` 실행 시 수행. +- 다음 행동: 사용자가 구현을 요청하면 `P1-T1`부터 실행한다. + +### P1-T1 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: CSV KR/JP와 `values/strings.xml`의 한국어 resource 값을 exact match로 대조해 `resource-mapping.md` 1차 후보 목록을 생성했다. +- 왜: CSV에 Android resource key가 없어 일본어 반영 전에 안전한 key 후보를 확정해야 한다. +- 어떻게: + - `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv` — Python `csv` 모듈로 multiline CSV를 파싱했다. + - `app/src/main/res/values/strings.xml` — XML `` 값을 key와 함께 추출했다. + - `docs/20260811_일본어_string_resource_반영/resource-mapping.md` — exact 후보 231행, 중복 KR 후보 164행, 미매칭 후보 130행을 기록했다. +- 남은 항목: `values-ja/strings.xml` 기존값 대조와 `반영/보류/제외/변경 없음` 상태 확정. +- 다음 행동: `P1-T2`에서 기존 JA 값과 CSV JP 값을 대조한다. + +### P1-T2 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: `resource-mapping.md` 후보를 `values-ja/strings.xml` 기존값과 대조해 상태를 확정했다. +- 왜: 확정되지 않은 중복·placeholder·alias·오탈자 의심 항목을 일본어 리소스에 반영하지 않기 위해서다. +- 어떻게: + - `app/src/main/res/values-ja/strings.xml` — 후보 key의 기존 JA 값을 추출했다. + - `resource-mapping.md` — 최초 기준으로 `반영` 33행, `변경 없음` 34행, `보류` 294행으로 갱신했다. + - 백그라운드 탐색 결과 — 중복 KR, alias, placeholder, multiline/escape, JP 이상 사례가 현재 보류 규칙과 일치함을 확인했다. +- 남은 항목: `P1-GATE`에서 모든 행의 상태와 Phase 2 대상 제한을 확인한다. +- 다음 행동: `P1-GATE`를 실행한다. + +### P1-T2 2차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: 사용자 추가 지시에 따라 한국어 리소스가 없는 행을 `제외`로 확정하고, JP 오탈자 의심 항목 처리 기준을 바꿨다. +- 왜: 한국어 리소스가 없는 CSV 행은 신규 key를 만들지 않고 반영 대상에서 제외해야 하며, JP 오탈자 의심은 임의 보정하지 않고 확인 가능하게 남겨야 한다. +- 어떻게: + - `resource-mapping.md` — 추가 지시 전 기준으로 `반영` 33행, `변경 없음` 34행, `보류` 164행, `제외` 130행으로 갱신했다. + - `최근 본 시리즈가 없어요... / しいシリーズを見つけましょう!` — JP 오탈자 의심이지만 한국어 resource exact match가 없어 `제외`로 유지하고 최종 리포트 확인 대상으로 남긴다. +- 남은 항목: Phase 2에서 `반영` 상태 33개 key만 적용한다. +- 다음 행동: 이미 적용한 `values-ja/strings.xml` 33개 key가 새 기준과 일치하는지 재검증한다. + +### P1-T2 3차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: `{{...}}`, `{...}`, `n%` 치환 후보와 중복 KR CSV JP 우선 정책을 반영해 매핑표를 재계산했다. +- 왜: 사용자가 placeholder 형태 문구도 앱 내 변경 가능 리소스로 고려하고, 중복 KR의 기존 JP가 다르면 CSV JP를 우선하라고 지시했다. +- 어떻게: + - `resource-mapping.md` — 최초 추가 지시 기준으로 `반영` 34행, `변경 없음` 200행, `제외` 127행으로 갱신했다. + - placeholder/suffix 후보 — `{{장르}}의 크리에이터`는 `home_recommendation_section_genre_creator_suffix`, `{{크리에이터 이름}}...랭킹...`은 `screen_home_following_creator_ranking_news_message`, `전체 오디오의 n%...`은 `creator_channel_audio_owned_rate_message`로 대응했다. + - 중복 KR 후보 — 기존 JP가 CSV JP와 다른 key는 `반영`으로 분류했다. + - `
` — 매핑표 표시용으로만 사용하고 XML 적용 값은 `\n`으로 유지했다. +- 남은 항목: 새 기준에 따라 `values-ja/strings.xml`을 재검증한다. +- 다음 행동: `P2-T1` 재검증과 Gate를 다시 실행한다. + +### P1-GATE 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: `resource-mapping.md`의 상태와 확정 반영 key의 KR/JA 리소스 존재 여부를 검증했다. +- 왜: Phase 2에서 보류 항목을 실수로 반영하지 않도록 반영 대상을 33개 key로 제한하기 위해서다. +- 어떻게: + - `resource-mapping.md` — 전체 361행이 `반영`, `보류`, `제외`, `변경 없음` 중 허용 상태인지 확인했다. + - `app/src/main/res/values/strings.xml`, `app/src/main/res/values-ja/strings.xml` — `반영` 33개 key가 양쪽 리소스에 존재함을 확인했다. + - Gate 결과 — 최초 기준 `rows=361 apply=33 hold=294 unchanged=34`, 추가 지시 반영 후 `apply=33 hold=164 unchanged=34 excluded=130`. +- 남은 항목: `P2-T1`에서 `반영` 상태 33개 key만 `values-ja/strings.xml`에 적용한다. +- 다음 행동: `P2-T1`을 실행한다. + +### P2-T1 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: `resource-mapping.md`의 `반영` 상태 33개 key만 `app/src/main/res/values-ja/strings.xml`에 CSV JP 값으로 반영했다. +- 왜: 확정 key에 한정해 일본어 리소스를 갱신하고, 보류/제외 항목의 오반영을 막기 위해서다. +- 어떻게: + - `./gradlew :app:assembleDebug` — 수정 전 baseline 성공, `BUILD SUCCESSFUL in 45s`. + - `app/src/main/res/values-ja/strings.xml` — 최종 기준 확정 34개 key를 CSV JP 또는 Android placeholder/suffix 변환값으로 수정했다. + - `./gradlew :app:assembleDebug` — 수정 후 GREEN 확인 성공, `BUILD SUCCESSFUL in 11s`. + - `resource-mapping.md` 대조 — 추가 지시 전 `반영=33 변경 없음=34 보류=164 제외=130`, 이후 최종 `반영=34 변경 없음=200 제외=127`. + - `./gradlew :app:assembleDebug` — REFACTOR 대체 확인 성공, `BUILD SUCCESSFUL in 2s`. + - `./gradlew :app:lintDebug` — 실행하지 않음. 이번 변경은 XML string resource 치환이고 `assembleDebug`가 resource XML 파싱과 packaging을 검증했으며, 추가 lint 실행이 새 증거를 만들 필요가 없다고 판단했다. +- 남은 항목: `P2-GATE`에서 diff 범위와 최종 빌드 상태를 확인한다. +- 다음 행동: `P2-GATE`를 실행한다. + +### P2-GATE 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: 일본어 resource 반영 결과와 회귀 범위를 최종 검증했다. +- 왜: 확정 key만 반영됐고 한국어/영어 리소스나 코드가 수정되지 않았음을 확인하기 위해서다. +- 어떻게: + - `./gradlew :app:assembleDebug` — 리뷰 블로커 수정 후 최종 성공, `BUILD SUCCESSFUL in 10s`. + - `python3` XML parse — `app/src/main/res/values-ja/strings.xml` 파싱 성공, `xml_parse_ok escaped_newlines_ok no_literal_br`. + - `git diff -- app/src/main/res/values/strings.xml app/src/main/res/values-en/strings.xml` — 출력 없음, 한국어/영어 리소스 변경 없음. + - `git diff --name-only` — 변경 범위는 `app/src/main/res/values-ja/strings.xml`, `prd.md`, `plan-task.md`, `resource-mapping.md`로 확인했다. 추가 지시 반영 후에도 동일하다. + - `resource-mapping.md` 최종 상태 — `반영=67 변경 없음=167 제외=127`, 모든 `반영` 값이 `values-ja`와 일치함. +- 남은 항목: reviewer gate와 최종 보고. +- 다음 행동: 변경 범위 리뷰를 요청한다. + +### 리뷰 블로커 수정 1차 실행 — 2026-08-11 + +- 상태: 완료 +- 무엇을: reviewer가 지적한 매핑 상태 불일치와 XML 물리 개행 문제를 수정했다. +- 왜: HEAD 기준 실제 diff와 `resource-mapping.md` 상태가 일치해야 하고, `
` 대응 값은 XML에서 물리 개행이 아니라 `\n` escape로 저장되어야 한다. +- 어떻게: + - `resource-mapping.md` — HEAD 기준으로 재분류해 `반영` 67행, `변경 없음` 167행, `제외` 127행으로 갱신했다. + - `app/src/main/res/values-ja/strings.xml` — string body 내부 물리 개행을 `\n` escape로 정규화했다. + - 검증 — `xml_parse_ok escaped_newlines_ok no_literal_br`, `apply_values_match`, `./gradlew :app:assembleDebug` 최종 `BUILD SUCCESSFUL in 10s`. +- 남은 항목: 재리뷰 통과와 최종 보고. +- 다음 행동: reviewer gate를 다시 실행한다. + ## Decision Log | 날짜 | ID | 상태 | 결정 | 근거 | 영향 Goal/문서 | |---|---|---|---|---|---| | 2026-08-11 | `DEC-001` | 확정 | CSV KR/JP 쌍은 resource key 매핑표를 먼저 확정한 뒤 반영한다. | CSV에는 `string name`이 없고 중복 KR 문구가 존재한다. | `P1-T1`, `P1-T2`, `P2-T1` | | 2026-08-11 | `DEC-002` | 확정 | 이번 실행에서는 `prd.md`, `plan-task.md`만 생성하고 resource XML은 수정하지 않는다. | 사용자 요청 범위가 문서 생성으로 한정됐다. | 전체 | +| 2026-08-11 | `DEC-003` | 확정 | 매핑표는 `docs/20260811_일본어_string_resource_반영/resource-mapping.md` 별도 파일로 생성한다. | 검토 대상 행이 많고 반영/보류/제외 상태 추적이 필요하다. | `P1-T1`, `P1-T2`, `P1-GATE` | +| 2026-08-11 | `DEC-004` | 확정 | 한국어 resource exact match가 없는 CSV 행은 `제외`한다. | 사용자 추가 지시. | `P1-T2`, `P1-GATE` | +| 2026-08-11 | `DEC-005` | 확정 | JP 오탈자 의심 항목은 key가 있으면 CSV 값을 그대로 반영하고 최종 리포트에 기록한다. key가 없으면 제외한다. | 사용자 추가 지시와 “한국어 리소스가 없는 것은 반영하지 않는다” 조건. | `P2-T1`, 최종 보고 | ## 발견된 문제 @@ -280,21 +406,23 @@ P1-T1 -> P1-T2 -> P1-GATE -> P2-T1 -> P2-GATE |---|---|---|---|---|---| | `ISSUE-001` | Medium | 후보 | CSV에 resource key가 없어 동일 KR 문구를 자동 매핑하면 오반영 위험이 있다. | `P1-T1` | exact match 후보와 중복 후보를 분리한다. | | `ISSUE-002` | Low | 후보 | 기존 `values-ja/strings.xml`에 `フォロー를解除`처럼 혼합 언어 의심 문구가 있다. | `P1-T2` | CSV 매핑 후보와 일치하면 변경 후보로 분류한다. | -| `ISSUE-003` | Low | 후보 | CSV JP에 `しいシリーズを見つけましょう!`처럼 오탈자 의심 문구가 있다. | `P1-T2` | 사용자 확인 전 반영하지 않는다. | +| `ISSUE-003` | Low | 후보 | CSV JP에 `しいシリーズを見つけましょう!`처럼 오탈자 의심 문구가 있다. | `P1-T2` | key가 있으면 그대로 반영하고 최종 리포트에 기록한다. 현재 해당 CSV 행은 한국어 resource exact match가 없어 제외됐다. | ## Verification Log - 2026-08-11 문서 생성 검증: `prd.md`, `plan-task.md`를 CSV 파일이 있는 `docs/20260811_일본어_string_resource_반영/` 폴더에 생성했다. 코드와 resource XML은 수정하지 않았다. +- 2026-08-11 문서 보정 검증: 매핑표 저장 위치를 `resource-mapping.md`로 명시했다. 실제 매핑표 파일은 `P1-T1` 실행 시 생성한다. +- 2026-08-11 통합 검증: `resource-mapping.md` 최종 기준 `반영` 67개 key만 `values-ja/strings.xml`에 적용했고, `./gradlew :app:assembleDebug`가 최종 `BUILD SUCCESSFUL in 10s`로 통과했다. 한국어/영어 리소스 diff는 없다. ## 최종 보고 형식 ```markdown -구현 결과: <완료한 Phase와 resource 반영 범위> +구현 결과: Phase 1 매핑 확정과 Phase 2 일본어 resource 반영 완료 -- 변경: <수정한 resource key와 파일> -- 결정: +- 변경: `app/src/main/res/values-ja/strings.xml`의 확정 resource key만 CSV JP 값 또는 Android placeholder/suffix 변환값으로 수정 +- 결정: `DEC-001` 매핑표 먼저 확정 후 확정 key만 반영 - 검증: - - `<실행 명령>` — <성공/실패와 핵심 결과> -- 남은 항목: <보류된 문구 또는 없음> -- 문서: <갱신한 PRD/plan-task 경로> + - `./gradlew :app:assembleDebug` — 성공 또는 실패와 핵심 원인 기록 +- 남은 항목: 보류된 문구와 사용자 확인 필요 항목 기록 +- 문서: `docs/20260811_일본어_string_resource_반영/prd.md`, `docs/20260811_일본어_string_resource_반영/plan-task.md`, `docs/20260811_일본어_string_resource_반영/resource-mapping.md` ``` diff --git a/docs/20260811_일본어_string_resource_반영/prd.md b/docs/20260811_일본어_string_resource_반영/prd.md index ae0883bd..663df2c3 100644 --- a/docs/20260811_일본어_string_resource_반영/prd.md +++ b/docs/20260811_일본어_string_resource_반영/prd.md @@ -10,6 +10,7 @@ | 대상 제품 | SodaLive Android 일본어 string resource | | 작성자·결정권자 | 사용자, Sisyphus | | 기준 CSV | `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv` | +| 매핑표 | `docs/20260811_일본어_string_resource_반영/resource-mapping.md` | | 관련 구현 계획 | `docs/20260811_일본어_string_resource_반영/plan-task.md` | | 관련 review | 없음 | @@ -23,7 +24,7 @@ ## 1. Overview -`kr_jp_string_resource.csv`의 KR/JP 쌍을 기준으로 Android 일본어 리소스 `app/src/main/res/values-ja/strings.xml` 반영 범위를 확정한다. CSV에는 Android `string name` 키가 없으므로, 한국어 원문과 `app/src/main/res/values/strings.xml` 값을 대조해 resource key 매핑을 먼저 확정한 뒤 일본어 값을 반영한다. +`kr_jp_string_resource.csv`의 KR/JP 쌍을 기준으로 Android 일본어 리소스 `app/src/main/res/values-ja/strings.xml` 반영 범위를 확정한다. CSV에는 Android `string name` 키가 없으므로, 한국어 원문과 `app/src/main/res/values/strings.xml` 값을 대조한 결과를 `resource-mapping.md`에 저장하고 resource key 매핑을 먼저 확정한 뒤 일본어 값을 반영한다. `{{...}}`, `{...}`, `n%`처럼 앱에서 치환되는 문구는 Android placeholder 또는 suffix resource와 대응되는 경우 후보로 포함한다. ## 2. Problem Statement @@ -70,7 +71,7 @@ 1. `kr_jp_string_resource.csv`의 KR/JP 행을 읽는다. 2. `app/src/main/res/values/strings.xml`에서 KR 문구와 일치하는 resource key 후보를 찾는다. -3. 같은 KR 문구가 여러 key에 매칭되면 모두 후보로 기록하고, 화면 맥락상 반영할 key를 확정한다. +3. 같은 KR 문구가 여러 key에 매칭되면 모두 `resource-mapping.md`에 후보로 기록하고, 기존 JP가 CSV JP와 다르면 CSV JP를 우선 반영한다. 4. `app/src/main/res/values-ja/strings.xml`의 기존 JP 값을 확인한다. 5. 확정된 key만 CSV JP 값으로 수정한다. 6. XML escape, placeholder, 줄바꿈, 빌드 리소스 검증을 실행한다. @@ -82,9 +83,12 @@ | ID | 상태 | 요구사항 | 수용 기준 | 계획 연결 | |---|---|---|---|---| | `I18N-MAP-001` | 확정 | CSV 행은 resource key 없이 제공된 KR/JP 쌍으로 취급한다. | key 추정 없이 `values/strings.xml` 값과 일치하는 후보만 매핑 대상으로 삼는다. | `P1-T1` | -| `I18N-MAP-002` | 확정 | 동일 KR 문구가 여러 resource key에 있으면 자동 덮어쓰지 않는다. | 중복 후보는 `plan-task.md`의 후보 매핑/충돌 목록에 기록하고 확정된 key만 반영한다. | `P1-T1`, `P1-T2` | -| `I18N-MAP-003` | 확정 | CSV JP와 기존 JP가 다른 항목은 변경 후보로 분리한다. | 변경 전 기존 값, CSV 값, 반영 결정이 기록된다. | `P1-T2` | -| `I18N-MAP-004` | 확정 | CSV JP의 오탈자 의심 항목은 임의 수정하지 않는다. | 예: `しいシリーズを見つけましょう!`처럼 의심되는 값은 확인 필요로 남긴다. | `P1-T2` | +| `I18N-MAP-002` | 확정 | 동일 KR 문구가 여러 resource key에 있으면 모든 후보를 기록하고 CSV JP를 우선한다. | 중복 후보 중 기존 JP가 CSV JP와 다르면 해당 key에 CSV JP를 반영한다. | `P1-T1`, `P1-T2`, `P2-T1` | +| `I18N-MAP-003` | 확정 | CSV JP와 기존 JP가 다른 항목은 변경 후보로 분리한다. | 변경 전 기존 값, CSV 값, 반영 결정이 `resource-mapping.md`에 기록된다. | `P1-T2` | +| `I18N-MAP-004` | 확정 | CSV JP의 오탈자 의심 항목은 제품 문구를 임의 보정하지 않는다. | KR resource key가 있으면 CSV JP를 그대로 반영하고 최종 리포트에 확인 필요로 기록한다. KR resource key가 없으면 반영하지 않는다. | `P1-T2`, `P2-T1` | +| `I18N-MAP-005` | 확정 | `values/strings.xml`에 exact 또는 placeholder/suffix 대응 한국어 리소스가 없으면 반영하지 않는다. | 해당 CSV 행은 신규 key 추정 없이 `resource-mapping.md`에서 `제외`로 분류한다. | `P1-T2`, `P1-GATE` | +| `I18N-MAP-006` | 확정 | CSV의 `{{...}}`, `{...}`, `n%` 치환 문구는 앱 내 변경 가능한 리소스로 고려한다. | Android `%1$s`, `%1$d`, suffix resource와 안전하게 대응되는 경우 후보로 기록하고 Android 형식 값으로 반영한다. | `P1-T2`, `P2-T1` | +| `I18N-MAP-007` | 확정 | 매핑표의 `
`은 표시용이며 XML에 그대로 반영하지 않는다. | `values-ja/strings.xml`에는 줄바꿈을 `\n`으로 저장하고 literal `
`이 없어야 한다. | `P2-T1`, `P2-GATE` | ### 7.2 리소스 반영 @@ -117,7 +121,7 @@ API 변경은 없다. 서버 계약, request/response, endpoint, 인증 header ### 11.1 기능 수용 기준 - [ ] CSV KR/JP 행 중 `values/strings.xml`과 매칭되는 후보가 resource key 단위로 식별된다. (`I18N-MAP-001`) -- [ ] 중복 KR 문구와 기존 JP 충돌 항목이 반영/보류/제외 중 하나로 분류된다. (`I18N-MAP-002`, `I18N-MAP-003`) +- [ ] 중복 KR 문구와 기존 JP 충돌 항목이 `resource-mapping.md`에서 반영/보류/제외 중 하나로 분류된다. (`I18N-MAP-002`, `I18N-MAP-003`) - [ ] 확정된 key만 `values-ja/strings.xml`에 반영된다. (`I18N-RES-001`) - [ ] Android resource placeholder와 줄바꿈 형식이 보존된다. (`I18N-RES-002`, `I18N-RES-003`) @@ -132,13 +136,16 @@ API 변경은 없다. 서버 계약, request/response, endpoint, 인증 header | ID | 상태 | 결정 필요 사항 | 현재 권고 | 결정 주체 | 결정 시점 | 영향 Goal | |---|---|---|---|---|---|---| | `OQ-001` | 확정 | CSV에 key가 없을 때 반영 정책 | 매핑표 먼저 확정 후 확정 key만 반영 | 사용자 | 2026-08-11 | `P1-T1`, `P1-T2` | -| `OQ-002` | 미결 | CSV JP 오탈자 의심 항목을 그대로 반영할지 제품 문구로 보정할지 | 오탈자 의심 항목은 보류하고 사용자 확인 후 반영 | 사용자 | `P1-T2` 완료 전 | `P2-T1` | +| `OQ-002` | 확정 | CSV JP 오탈자 의심 항목을 그대로 반영할지 제품 문구로 보정할지 | KR resource key가 있으면 CSV JP 그대로 반영하고 최종 리포트에 기록 | 사용자 | 2026-08-11 | `P2-T1` | +| `OQ-003` | 확정 | 한국어 리소스가 없는 CSV 행을 신규 key로 추가할지 여부 | exact 또는 placeholder/suffix 대응 key가 없으면 신규 key를 만들지 않고 제외 | 사용자 | 2026-08-11 | `P1-T2`, `P1-GATE` | +| `OQ-004` | 확정 | 중복 KR 후보의 기존 JP가 CSV JP와 다를 때 처리 | CSV JP 우선 반영 | 사용자 | 2026-08-11 | `P2-T1` | +| `OQ-005` | 확정 | 매핑표 `
`의 XML 반영 방식 | literal `
`이 아니라 `\n` 줄바꿈으로 반영 | 사용자 | 2026-08-11 | `P2-T1`, `P2-GATE` | ## 13. 요구사항 추적표 | 요구사항 범위 | 계획 Phase | Goal | 자동 검증 | 수동 검증 | |---|---:|---|---|---| -| `I18N-MAP-001~004` | 1 | `P1-T1`, `P1-T2`, `P1-GATE` | CSV/resource 대조, XML 후보 목록 확인 | 사용자 매핑 승인 | +| `I18N-MAP-001~007` | 1 | `P1-T1`, `P1-T2`, `P1-GATE` | `resource-mapping.md` 후보 목록 확인 | 사용자 매핑 승인 | | `I18N-RES-001~004` | 2 | `P2-T1`, `P2-GATE` | `./gradlew :app:assembleDebug`, 필요 시 `./gradlew :app:lintDebug` | 일본어 locale 화면 확인은 사용자 명시 요청 시 별도 수행 | ## 14. Decision Log @@ -148,6 +155,12 @@ API 변경은 없다. 서버 계약, request/response, endpoint, 인증 header | 2026-08-11 | `DEC-001` | 확정 | CSV KR/JP 쌍은 resource key 매핑표를 먼저 확정한 뒤 반영한다. | CSV에 key가 없고 동일 KR 문구가 여러 resource key에 반복된다. | `I18N-MAP-001~003`, `P1-T1`, `P1-T2` | | 2026-08-11 | `DEC-002` | 확정 | 이번 요청에서는 PRD와 계획문서만 생성하고 실제 string resource는 수정하지 않는다. | 사용자 요청: “모호한 것은 물어보고 prd와 계획문서만 생성한다.” | 전체 | | 2026-08-11 | `DEC-003` | 확정 | 문서는 CSV 파일이 있는 `docs/20260811_일본어_string_resource_반영/` 폴더에 생성한다. | 사용자 요청: “문서 생성은 csv파일이 있는 폴더에 생성한다.” | 전체 | +| 2026-08-11 | `DEC-004` | 확정 | 매핑표는 `resource-mapping.md` 별도 파일로 생성한다. | 매핑 행이 많고 반영/보류/제외 검토가 필요해 `plan-task.md` Progress에만 누적하면 추적성이 낮다. | `I18N-MAP-002~003`, `P1-T1`, `P1-T2` | +| 2026-08-11 | `DEC-005` | 확정 | 한국어 리소스가 없는 CSV 행은 반영하지 않고 `제외`로 분류한다. | 사용자 지시: “한국어 리소스가 없는 것은 반영하지 않는다.” | `I18N-MAP-005`, `P1-T2`, `P1-GATE` | +| 2026-08-11 | `DEC-006` | 확정 | JP 오탈자 의심 항목은 CSV 값을 그대로 반영하고 최종 리포트에 확인 필요로 기록한다. | 사용자 지시: “JP 오탈자로 의심되는 것은 우선 그대로 반영하고 최종 리포트에 기록” | `I18N-MAP-004`, `P2-T1` | +| 2026-08-11 | `DEC-007` | 확정 | `{{...}}`, `{...}`, `n%` 치환 문구는 Android placeholder/suffix 대응 후보로 재확인한다. | 사용자 지시: “{{}} 형태로 들어가 있는 것은 앱 내에서 변경할 수 있는 리소스” | `I18N-MAP-006`, `P1-T2`, `P2-T1` | +| 2026-08-11 | `DEC-008` | 확정 | 중복 KR 후보의 JP가 다르면 CSV JP를 우선 반영한다. | 사용자 지시: “중복되는 것 중 JP가 다르게 적용되어 있는 것은 csv JP를 우선 반영” | `I18N-MAP-002`, `P2-T1` | +| 2026-08-11 | `DEC-009` | 확정 | 매핑표 `
`은 XML에 literal로 쓰지 않고 `\n`으로 반영한다. | 사용자 지시: “
은 그대로 반영하는 것이 아니라 줄바꿈으로 반영” | `I18N-MAP-007`, `P2-T1`, `P2-GATE` | ## 15. 변경 관리 diff --git a/docs/20260811_일본어_string_resource_반영/resource-mapping.md b/docs/20260811_일본어_string_resource_반영/resource-mapping.md index 478e00b9..3bcd6fb1 100644 --- a/docs/20260811_일본어_string_resource_반영/resource-mapping.md +++ b/docs/20260811_일본어_string_resource_반영/resource-mapping.md @@ -5,387 +5,386 @@ | 기준 CSV | `docs/20260811_일본어_string_resource_반영/kr_jp_string_resource.csv` | | 한국어 리소스 | `app/src/main/res/values/strings.xml` | | 일본어 리소스 | `app/src/main/res/values-ja/strings.xml` | -| 상태 | 후보 작성 완료 | +| 상태 | 리뷰 블로커 반영 완료 | ## 상태 정의 | 상태 | 의미 | |---|---| -| 후보 | CSV KR과 한국어 resource 값이 exact match된 1차 후보 | -| 미매칭 후보 | CSV KR과 exact match되는 한국어 resource 값이 없음 | -| 반영 | `values-ja/strings.xml`에 CSV JP 값으로 반영할 확정 대상 | -| 변경 없음 | 기존 JA 값이 CSV JP 값과 같아 수정하지 않는 대상 | -| 보류 | 중복, placeholder 차이, 오탈자 의심, alias 등으로 사용자 확인이 필요한 대상 | -| 제외 | 이번 작업에서 반영하지 않는 대상 | +| 반영 | HEAD 기준 기존 JA와 달라 `values-ja/strings.xml`에 CSV JP 값 또는 Android placeholder 변환값으로 반영한 대상 | +| 변경 없음 | HEAD 기준 기존 JA 값이 CSV JP 값 또는 Android placeholder 변환값과 같아 수정하지 않는 대상 | +| 보류 | key는 있으나 현재 JA 값이 목표 값과 다르거나 values-ja key 누락 등으로 확인이 필요한 대상 | +| 제외 | 한국어 resource exact/placeholder match가 없어 이번 작업에서 반영하지 않는 대상 | ## 요약 -- 매핑 후보 행: 231 -- 중복 KR 후보 행: 164 -- 미매칭 후보 행: 130 +- 반영: 67 +- 변경 없음: 167 +- 보류: 0 +- 제외: 127 ## 매핑 후보 | CSV row | KR | JP | resource key | 기존 JA | 상태 | 비고 | |---:|---|---|---|---|---|---| -| 2 | 홈 | ホーム | `tab_home` | | 후보 | 중복 KR 후보 | -| 2 | 홈 | ホーム | `screen_series_detail_tab_home` | | 후보 | 중복 KR 후보 | -| 2 | 홈 | ホーム | `screen_series_main_tab_home` | | 후보 | 중복 KR 후보 | -| 2 | 홈 | ホーム | `creator_channel_tab_home` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `feed_content_category_default` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `feed_content_category_content` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `tab_content` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `screen_home_recommend_channel_content_label` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `screen_user_profile_content_title` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `screen_search_tab_content` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `screen_search_content_title` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `alarm_add_content_label` | | 후보 | 중복 KR 후보 | -| 3 | 콘텐츠 | コンテンツ | `screen_content_main_title` | | 후보 | 중복 KR 후보 | -| 4 | 대화 | トーク | `tab_chat` | | 후보 | exact match 후보 | -| 5 | 마이 | マイページ | `tab_my` | | 후보 | exact match 후보 | -| 6 | 추천 | おすすめ | `screen_home_tab_recommendation` | | 후보 | 중복 KR 후보 | -| 6 | 추천 | おすすめ | `screen_content_tab_recommendation` | | 후보 | 중복 KR 후보 | -| 7 | 랭킹 | ランキング | `screen_home_tab_ranking` | | 후보 | 중복 KR 후보 | -| 7 | 랭킹 | ランキング | `screen_content_tab_ranking` | | 후보 | 중복 KR 후보 | -| 8 | 팔로잉 | フォロー中 | `screen_home_following` | | 후보 | 중복 KR 후보 | -| 8 | 팔로잉 | フォロー中 | `screen_home_tab_following` | | 후보 | 중복 KR 후보 | -| 8 | 팔로잉 | フォロー中 | `screen_live_recommend_channel_prefix` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_chat_filter_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `creator_channel_live_total_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `creator_channel_audio_total_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `creator_channel_series_total_content_count` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_home_theme_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_content_tab_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `creator_channel_fantalk_all_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `creator_channel_donation_all_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_new_characters_all_total_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_live_room_total_count_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_live_room_create_gender_restriction_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_service_center_faq_category_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_user_follower_list_total_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_user_profile_donation_total_label` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `dialog_creator_follow_notify_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `screen_content_settings_all` | | 후보 | 중복 KR 후보 | -| 9 | 전체 | すべて | `audio_content_label_all` | | 후보 | 중복 KR 후보 | -| 10 | 방금 활동한 크리에이터 | 最近活動したクリエイター | `home_recommendation_section_recently_active_creators` | | 후보 | exact match 후보 | -| 11 | 최근 데뷔한 크리에이터 | 新着クリエイター | `home_recommendation_section_recent_debut_creators` | | 후보 | exact match 후보 | -| 12 | 처음부터 함께 성장! | 今から推せる | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 13 | 크리에이터와 이야기를 나눠요! | クリエイターと話す | `home_recommendation_section_ai_characters` | | 후보 | exact match 후보 | -| 14 | 추천 필모그래피 | おすすめフィルモグラフィー | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 15 | 또 다른 모습 | 写真集 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 16 | {{장르}}의 크리에이터 | {{ジャンル}}のクリエイター | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 17 | 최근 응원이 많은 크리에이터 | 最近応援の多いクリエイター | `home_recommendation_section_cheer_creators` | | 후보 | exact match 후보 | -| 18 | 인기 커뮤니티 | 人気コミュニティ | `home_recommendation_section_popular_community_posts` | | 후보 | exact match 후보 | -| 19 | 주간 인기 | 週間人気 | `screen_content_ranking_type_weekly_popular` | | 후보 | exact match 후보 | -| 20 | 지금 뜨는 중 | 急上昇 | `screen_content_ranking_type_rising` | | 후보 | exact match 후보 | -| 21 | 남성 인기 | 男性人気 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 22 | 여성 인기 | 女性人気 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 23 | 최근 대화 | 最近のトーク | `screen_home_following_recent_chats_title` | | 후보 | exact match 후보 | -| 24 | 이달의 스케줄 | 今月のスケジュール | `screen_home_following_monthly_schedules_title` | | 후보 | exact match 후보 | -| 25 | 최근 소식 | 最新情報 | `screen_home_following_recent_news_title` | | 후보 | exact match 후보 | -| 26 | {{크리에이터 이름}}님이 이번 주 랭킹 n위에 올랐어요! | {{크리에이터 이름}}が今週のランキングでn位にランクイン! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 28 | 아직 팔로우한 크리에이터가 없어요. 관심 있는 크리에이터를 팔로우해 보세요. | まだフォローしているクリエイターがいません。
気になるクリエイターをフォローしてみましょう。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 29 | 찾아보기 | 探す | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 30 | 오직 보이스온에서만! | VOICE ON限定 | `content_recommendation_section_original_series` | | 후보 | exact match 후보 | -| 31 | 새로 올라온 오디오 | 新着オーディオ | `content_recommendation_section_latest_audio` | | 후보 | exact match 후보 | -| 32 | 추천 시리즈 | おすすめシリーズ | `screen_series_main_recommend_title` | | 후보 | 중복 KR 후보 | -| 32 | 추천 시리즈 | おすすめシリーズ | `audio_content_recommend_series_title` | | 후보 | 중복 KR 후보 | -| 33 | 무료 오디오 | 無料オーディオ | `content_recommendation_section_free_audio` | | 후보 | exact match 후보 | -| 34 | 포인트 오디오 | ポイントオーディオ | `content_recommendation_section_point_audio` | | 후보 | exact match 후보 | -| 35 | 최근 댓글이 많은 오디오 | 最近コメントの多いオーディオ | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 36 | {{키워드}}의 오디오 | {{キーワード}}のオーディオ | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 37 | 추천 오디오 | おすすめオーディオ | `content_recommendation_section_recommended_audio` | | 후보 | exact match 후보 | -| 38 | 매출 | 売上 | `screen_home_sort_revenue` | | 후보 | 중복 KR 후보 | -| 38 | 매출 | 売上 | `screen_content_ranking_type_revenue` | | 후보 | 중복 KR 후보 | -| 39 | 판매량 | 販売数 | `screen_home_sort_sales_count` | | 후보 | 중복 KR 후보 | -| 39 | 판매량 | 販売数 | `screen_content_ranking_type_sales_count` | | 후보 | 중복 KR 후보 | -| 40 | 댓글수 | コメント数 | `screen_content_ranking_type_comment_count` | | 후보 | exact match 후보 | -| 41 | 좋아요 | いいね | `screen_home_sort_like_count` | | 후보 | 중복 KR 후보 | -| 41 | 좋아요 | いいね | `screen_content_ranking_type_like_count` | | 후보 | 중복 KR 후보 | -| 42 | 오디오 | オーディオ | `screen_content_all_type_audio` | | 후보 | 중복 KR 후보 | -| 42 | 오디오 | オーディオ | `home_recommendation_activity_audio` | | 후보 | 중복 KR 후보 | -| 42 | 오디오 | オーディオ | `creator_channel_tab_audio` | | 후보 | 중복 KR 후보 | -| 42 | 오디오 | オーディオ | `creator_channel_section_audio` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `feed_content_category_series` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `screen_content_all_type_series` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `creator_channel_tab_series` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `creator_channel_section_series` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `screen_user_profile_series_title` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `screen_search_tab_series` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `screen_search_series_title` | | 후보 | 중복 KR 후보 | -| 43 | 시리즈 | シリーズ | `audio_content_home_tab_series` | | 후보 | 중복 KR 후보 | -| 44 | 오리지널 | オリジナル | `screen_content_all_type_original` | | 후보 | exact match 후보 | -| 45 | 무료 | 無料 | `screen_live_now_all_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `screen_content_all_type_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `live_reservation_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `screen_live_room_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `screen_live_room_create_price_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `screen_creator_community_write_price_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `screen_audio_content_upload_price_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `audio_content_price_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `audio_content_tag_free` | | 후보 | 중복 KR 후보 | -| 45 | 무료 | 無料 | `audio_content_home_tab_free` | | 후보 | 중복 KR 후보 | -| 46 | 포인트 | ポイント | `screen_content_all_type_point` | | 후보 | 중복 KR 후보 | -| 46 | 포인트 | ポイント | `screen_user_profile_latest_content_point` | | 후보 | 중복 KR 후보 | -| 46 | 포인트 | ポイント | `audio_content_badge_point` | | 후보 | 중복 KR 후보 | -| 47 | 화보 | フォト | `screen_home_following_photo_content` | | 후보 | exact match 후보 | -| 48 | 최신순 | 最新順 | `screen_series_content_sort_newest` | | 후보 | 중복 KR 후보 | -| 48 | 최신순 | 最新順 | `screen_audition_sort_newest` | | 후보 | 중복 KR 후보 | -| 48 | 최신순 | 最新順 | `screen_audio_content_sort_newest` | | 후보 | 중복 KR 후보 | -| 49 | 추천순 | おすすめ順 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 50 | 인기순 | 人気順 | `screen_audio_content_sort_popularity` | | 후보 | exact match 후보 | -| 51 | 높은 가격순 | 高い順 | `screen_audio_content_sort_price_high` | | 후보 | exact match 후보 | -| 52 | 낮은 가격순 | 安い順 | `screen_audio_content_sort_price_low` | | 후보 | exact match 후보 | -| 53 | 소장순 | 保有順 | `creator_channel_live_sort_owned` | | 후보 | exact match 후보 | -| 54 | 팔로우 | フォロー | `screen_home_follow` | | 후보 | 중복 KR 후보 | -| 54 | 팔로우 | フォロー | `creator_channel_follow_button` | | 후보 | 중복 KR 후보 | -| 55 | 팔로워 | フォロワー | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 56 | 대화하기 | トークする | `creator_channel_chat_button` | | 후보 | 중복 KR 후보 | -| 56 | 대화하기 | トークする | `character_detail_chat_button` | | 후보 | 중복 KR 후보 | -| 57 | DM 보내기 | DMを送る | `creator_channel_dm_button` | | 후보 | exact match 후보 | -| 58 | 라이브 | ライブ | `tab_live` | | 후보 | 중복 KR 후보 | -| 58 | 라이브 | ライブ | `home_recommendation_section_live` | | 후보 | 중복 KR 후보 | -| 58 | 라이브 | ライブ | `home_recommendation_activity_live` | | 후보 | 중복 KR 후보 | -| 58 | 라이브 | ライブ | `creator_channel_tab_live` | | 후보 | 중복 KR 후보 | -| 58 | 라이브 | ライブ | `screen_live_reservation_title_prefix` | | 후보 | 중복 KR 후보 | -| 58 | 라이브 | ライブ | `screen_live_replay_prefix` | | 후보 | 중복 KR 후보 | -| 58 | 라이브 | ライブ | `screen_user_profile_live_title` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `home_recommendation_activity_community` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `creator_channel_tab_community` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `creator_channel_section_community` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `creator_channel_community_detail_title` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `screen_live_community_title` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `screen_user_profile_community_title` | | 후보 | 중복 KR 후보 | -| 59 | 커뮤니티 | コミュニティ | `screen_creator_community_all_title` | | 후보 | 중복 KR 후보 | -| 60 | 팬Talk | ファントーク | `creator_channel_tab_fantalk` | | 후보 | 중복 KR 후보 | -| 60 | 팬Talk | ファントーク | `creator_channel_section_fantalk` | | 후보 | 중복 KR 후보 | -| 61 | 후원 | サポート | `creator_channel_tab_donation` | | 후보 | 중복 KR 후보 | -| 61 | 후원 | サポート | `creator_channel_section_donation` | | 후보 | 중복 KR 후보 | -| 61 | 후원 | サポート | `screen_audio_content_detail_donation` | | 후보 | 중복 KR 후보 | -| 62 | 팬레터 | ファンレター | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 63 | 후원하기 | サポートする | `creator_channel_donation_button` | | 후보 | 중복 KR 후보 | -| 63 | 후원하기 | サポートする | `creator_channel_donation_action` | | 후보 | 중복 KR 후보 | -| 63 | 후원하기 | サポートする | `screen_live_room_donation_title` | | 후보 | 중복 KR 후보 | -| 64 | 공지 | お知らせ | `creator_channel_section_notice` | | 후보 | 중복 KR 후보 | -| 64 | 공지 | お知らせ | `creator_channel_community_notice` | | 후보 | 중복 KR 후보 | -| 64 | 공지 | お知らせ | `screen_live_room_notice` | | 후보 | 중복 KR 후보 | -| 65 | 스케줄 | スケジュール | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 66 | 전체보기 | すべて見る | `view_all` | | 후보 | 중복 KR 후보 | -| 66 | 전체보기 | すべて見る | `screen_series_main_completed_all` | | 후보 | 중복 KR 후보 | -| 66 | 전체보기 | すべて見る | `creator_channel_donation_ranking_all` | | 후보 | 중복 KR 후보 | -| 67 | 전체 오디오의 n%를 소장하고 있어요. | 全オーディオのn%を所持しています。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 68 | 전체 화보의 n%를 소장하고 있어요. | 全フォトのn%を所持しています。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 69 | 전체소장 | 全話購入 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 70 | 완결 | 完結 | `creator_channel_series_status_completed` | | 후보 | 중복 KR 후보 | -| 70 | 완결 | 完結 | `screen_home_series_complete` | | 후보 | 중복 KR 후보 | -| 71 | 연재 | 連載 | `creator_channel_series_status_proceeding` | | 후보 | 중복 KR 후보 | -| 71 | 연재 | 連載 | `screen_series_detail_label_published_days` | | 후보 | 중복 KR 후보 | -| 72 | 소장중 | 保有中 | `audio_content_badge_owned` | | 후보 | 중복 KR 후보 | -| 72 | 소장중 | 保有中 | `alarm_select_badge_owned` | | 후보 | 중복 KR 후보 | -| 73 | 리스트형 | リスト | `creator_channel_community_view_mode_list` | | 후보 | exact match 후보 | -| 74 | 썸네일형 | グリッド | `creator_channel_community_view_mode_grid` | | 후보 | exact match 후보 | -| 75 | 구매완료 | 購入済み | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 76 | 삭제 | 削除 | `confirm_delete_title` | | 후보 | 중복 KR 후보 | -| 76 | 삭제 | 削除 | `screen_message_detail_action_delete` | | 후보 | 중복 KR 후보 | -| 76 | 삭제 | 削除 | `screen_roulette_config_option_delete` | | 후보 | 중복 KR 후보 | -| 76 | 삭제 | 削除 | `screen_creator_community_record_delete` | | 후보 | 중복 KR 후보 | -| 76 | 삭제 | 削除 | `screen_audio_content_detail_delete` | | 후보 | 중복 KR 후보 | -| 76 | 삭제 | 削除 | `menu_delete_action` | | 후보 | 중복 KR 후보 | -| 77 | 신고 | 通報 | `report_title` | | 후보 | 중복 KR 후보 | -| 77 | 신고 | 通報 | `report_button` | | 후보 | 중복 KR 후보 | -| 77 | 신고 | 通報 | `creator_channel_fantalk_report` | | 후보 | 중복 KR 후보 | -| 78 | 후원 랭킹 | サポートランキング | `creator_channel_donation_ranking_title` | | 후보 | exact match 후보 | -| 81 | 크리에이터가 라이브를 준비 중입니다.
기대해 주세요! | クリエイターがライブを準備しています。
お楽しみに! | `creator_channel_live_empty_message` | | 후보 | exact match 후보 | -| 84 | 크리에이터가 오디오를 준비 중입니다.
기대해 주세요! | クリエイターがオーディオを準備しています。
お楽しみに! | `creator_channel_audio_empty_message` | | 후보 | exact match 후보 | -| 87 | 크리에이터가 시리즈를 준비 중입니다.
기대해 주세요! | クリエイターがシリーズを準備しています。
お楽しみに! | `creator_channel_series_empty_message` | | 후보 | exact match 후보 | -| 90 | 크리에이터가 화보를 준비 중입니다.
기대해 주세요! | クリエイターがフォトを準備しています。
お楽しみに! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 93 | 크리에이터가 커뮤니티를 준비 중입니다.
기대해 주세요! | クリエイターがコミュニティを準備しています。
お楽しみに! | `creator_channel_community_empty_message` | | 후보 | exact match 후보 | -| 96 | 아직 응원이 없습니다.
처음으로 크리에이터를 응원해 보세요! | まだファンレターがありません。
最初のファンレターを送ってみましょう! | `creator_channel_fantalk_empty_message` | | 후보 | exact match 후보 | -| 97 | 응원 남기기 | ファンレターを送る | `creator_channel_fantalk_support_action` | | 후보 | exact match 후보 | -| 100 | 아직 후원이 없습니다.
처음으로 크리에이터를 후원해 보세요! | まだサポートがありません。
最初のサポートをしてみましょう! | `creator_channel_donation_empty_title` | | 후보 | exact match 후보 | -| 101 | 당신의 첫 응원을 기다리고 있어요! | あなたの最初のファンレターを待っています! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 102 | 댓글 | コメント | `screen_home_sort_comment_count` | | 후보 | 중복 KR 후보 | -| 102 | 댓글 | コメント | `character_detail_comments_label` | | 후보 | 중복 KR 후보 | -| 102 | 댓글 | コメント | `character_comment_title` | | 후보 | 중복 KR 후보 | -| 102 | 댓글 | コメント | `screen_audio_content_detail_comment_title` | | 후보 | 중복 KR 후보 | -| 103 | 취소 | キャンセル | `cancel` | | 후보 | 중복 KR 후보 | -| 103 | 취소 | キャンセル | `creator_channel_fantalk_write_cancel` | | 후보 | 중복 KR 후보 | -| 103 | 취소 | キャンセル | `screen_message_write_cancel` | | 후보 | 중복 KR 후보 | -| 103 | 취소 | キャンセル | `screen_live_room_cancel` | | 후보 | 중복 KR 후보 | -| 103 | 취소 | キャンセル | `screen_audio_content_upload_cancel` | | 후보 | 중복 KR 후보 | -| 104 | 보내기 | 送信 | `creator_channel_fantalk_write_send` | | 후보 | exact match 후보 | -| 105 | 입력 종료 | 入力終了 | `creator_channel_fantalk_write_exit_title` | | 후보 | exact match 후보 | -| 108 | 입력을 종료할까요?
지금 나가면 입력한 내용이 저장되지 않아요. | 入力を終了しますか?
終了すると、入力内容は保存されません。 | `creator_channel_fantalk_write_exit_desc` | | 후보 | exact match 후보 | -| 109 | 종료 | 終了 | `creator_channel_fantalk_write_exit_confirm` | | 후보 | exact match 후보 | -| 110 | 계속 작성 | 続ける | `creator_channel_fantalk_write_exit_cancel` | | 후보 | exact match 후보 | -| 111 | 응원 삭제 | ファンレターを削除 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 114 | 응원을 삭제할까요?
삭제 시 크리에이터의 답글도 같이 사라져요. | ファンレターを削除しますか?
削除すると、クリエイターからの返信も削除されます。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 115 | 오늘 | 今日 | `screen_user_profile_donation_stat_today` | | 후보 | exact match 후보 | -| 116 | 지금 | 今 | `screen_live_now_title_prefix` | | 후보 | exact match 후보 | -| 117 | 지난 | 終了 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 120 | 아직 대화가 없어요.
크리에이터와 이야기를 시작해 보세요. | まだ会話がありません。
クリエイターと話してみましょう。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 123 | 아직 나눈 AI 채팅이 없어요.
크리에이터와 대화를 시작해 보세요. | まだAIチャットがありません。
クリエイターと会話を始めてみましょう。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 126 | 아직 나눈 대화가 없어요.
좋아하는 크리에이터에게 메세지를 보내보세요. | まだメッセージがありません。
好きなクリエイターにメッセージを送ってみましょう。 | `screen_chat_empty_dm` | | 후보 | exact match 후보 | -| 127 | 크리에이터의 이름을 입력하세요 | クリエイター名を入力 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 128 | 대화 시작 | トーク開始 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 129 | {{크리에이터이름}}님과 AI 채팅 혹은 DM을 시작해 볼까요? | {{クリエイター名}}とAIチャットまたはDMを始めてみませんか? | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 130 | AI 채팅하기 | AIチャット | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 131 | 채팅 설정 | チャット設定 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 132 | 이미지 보관함 | ギャラリー | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 133 | 배경 이미지 설정 | 背景設定 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 134 | 채팅 초기화 | チャットを初期化 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 135 | 신규 크리에이터 | 新着クリエイター | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 136 | 나의 크리에이터 | マイクリエイター | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 137 | AI 캐릭터 채팅 | AIキャラクターチャット | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 138 | 팔로우 해제 | フォロー解除 | `dialog_unfollow_title` | | 후보 | exact match 후보 | -| 141 | 팔로우를 해제할까요?
{{크리에이터이름}}의 소식을 받을 수 없어요. | {{크리에이터이름}}からの最新情報を受け取れなくなります。
フォローを解除しますか? | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 142 | 해제하기 | 解除する | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 143 | 검색어를 입력하세요 | キーワードを入力 | `audio_content_home_search_placeholder` | | 후보 | exact match 후보 | -| 144 | 전체삭제 | すべて削除 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 145 | 최근 검색 | 最近の検索 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 146 | 인기 검색어 | 急上昇ワード | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 147 | AI 채팅 인기 검색 키워드 | AIチャット急上昇ワード | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 148 | 시리즈 인기 검색 키워드 | シリーズ急上昇ワード | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 149 | 오디오 인기 검색 키워드 | オーディオ急上昇ワード | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 150 | 키워드 | キーワード | `screen_series_detail_section_keywords` | | 후보 | exact match 후보 | -| 151 | 검색 결과 | 検索結果 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 152 | 정확도순 | 関連度順 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 153 | 많이 찾는 크리에이터 | 人気のクリエイター | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 156 | 관련 크리에이터가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するクリエイターがいません。
別のキーワードで検索してください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 159 | 관련 시리즈가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するシリーズがありません。
別のキーワードで検索してください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 162 | 관련 화보가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するフォトがありません。
別のキーワードで検索してください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 165 | 관련 키워드가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するキーワードがありません。
別のキーワードで検索してください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 166 | 라이브 시작하기 | ライブを開始 | `creator_channel_live_start_button` | | 후보 | exact match 후보 | -| 167 | 오디오 올리기 | オーディオを投稿 | `creator_channel_audio_upload_button` | | 후보 | exact match 후보 | -| 168 | 커뮤니티 글 올리기 | コミュニティ投稿 | `creator_channel_owner_fab_community` | | 후보 | exact match 후보 | -| 169 | 이메일을 입력해 주세요 | メールアドレスを入力してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 170 | 이메일 | メールアドレス | `hint_email` | | 후보 | 중복 KR 후보 | -| 170 | 이메일 | メールアドレス | `screen_profile_update_email_label` | | 후보 | 중복 KR 후보 | -| 171 | 이용약관 | 利用規約 | `terms_of_service` | | 후보 | 중복 KR 후보 | -| 171 | 이용약관 | 利用規約 | `screen_settings_terms` | | 후보 | 중복 KR 후보 | -| 172 | 개인정보수집 및 이용동의 | 個人情報の収集・利用への同意 | `privacy_policy` | | 후보 | exact match 후보 | -| 173 | 올바른 이메일을 입력해 주세요 | 正しいメールアドレスを入力してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 174 | 다음으로 | 次へ | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 175 | 이미 가입된 이메일이에요 | 登録済みのメールアドレスです | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 176 | 비밀번호를 입력해 주세요 | パスワードを入力してください | `screen_live_room_password_hint` | | 후보 | exact match 후보 | -| 177 | 비밀번호 | パスワード | `hint_password` | | 후보 | 중복 KR 후보 | -| 177 | 비밀번호 | パスワード | `screen_live_room_password_label` | | 후보 | 중복 KR 후보 | -| 177 | 비밀번호 | パスワード | `screen_profile_update_password_label` | | 후보 | 중복 KR 후보 | -| 178 | 8자 이상 (영문 대/소문자, 특수문자 포함) | 8文字以上(英大文字・小文字・記号を含む) | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 179 | 완료 | 完了 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 180 | 8자 이상, 영문 대/소문자와 특수문자를 포함해 주세요 | 8文字以上、英大文字・小文字・記号を含めてください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 181 | 이메일로 로그인하기 | メールアドレスでログイン | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 182 | 로그인 | ログイン | `title_login` | | 후보 | exact match 후보 | -| 183 | 가입되지 않은 이메일이에요 | 登録されていないメールアドレスです | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 184 | 입력한 비밀번호를 다시 확인해 주세요 | パスワードをもう一度確認してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 185 | 인증코드를 입력해 주세요 | 認証コードを入力してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 186 | {email}로 인증코드를 보냈어요 | {email}に認証コードを送信しました | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 187 | 인증코드 | 認証コード | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 188 | 0:00 후에 인증코드 다시 보내기 | 0:00後に認証コードを再送する | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 189 | 인증 가능한 시간을 초과했어요 | 認証可能時間を超過しました | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 190 | 인증코드 다시 보내기 | 認証コードを再送する | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 191 | 올바른 인증코드를 입력해 주세요 | 正しい認証コードを入力してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 192 | 새 비밀번호를 입력해 주세요 | 新しいパスワードを入力してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 193 | 기존 비밀번호와 다르게 설정해 주세요 | 現在のパスワードとは異なるものを設定してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 194 | 비밀번호 설정 완료! | パスワード設定完了! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 197 | 비밀번호 설정을 완료했어요.
다시 로그인해 주세요. | パスワードを設定しました。
もう一度ログインしてください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 198 | 재설정 종료 | 再設定を終了 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 201 | 지금 나가면 현재 진행중인 재설정이 종료되고,
처음부터 다시 진행해야 해요. | 終了すると、進行中の再設定が終了し、
最初からやり直す必要があります。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 202 | 계속 재설정 | 再設定を続ける | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 203 | AI 채팅 | AIチャット | `screen_chat_filter_ai` | | 후보 | exact match 후보 | -| 204 | 전체 크리에이터 | すべてのクリエイター | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 205 | 필수 | 必須 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 207 | 가입한 이메일을 입력해 주세요 | 登録メールアドレスを
入力してください | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 208 | 존재하지 않는 이메일이에요 | 登録されていないメールアドレスです | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 209 | 모두 팔로우하기 | すべてフォロー | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 210 | 대여중 | レンタル中 | `audio_content_badge_rented` | | 후보 | 중복 KR 후보 | -| 210 | 대여중 | レンタル中 | `alarm_select_badge_rental` | | 후보 | 중복 KR 후보 | -| 211 | 데뷔 | デビュー | `creator_channel_activity_debut` | | 후보 | 중복 KR 후보 | -| 211 | 데뷔 | デビュー | `screen_creator_detail_debut` | | 후보 | 중복 KR 후보 | -| 212 | 라이브 총 진행 수 | ライブ配信回数 | `creator_channel_activity_live_count` | | 후보 | exact match 후보 | -| 213 | 라이브 누적 진행 시간 | ライブ累計配信時間 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 214 | 라이브 누적 참여자 | ライブ累計参加者数 | `creator_channel_activity_live_contributor` | | 후보 | 중복 KR 후보 | -| 214 | 라이브 누적 참여자 | ライブ累計参加者数 | `screen_creator_detail_live_contributor_count` | | 후보 | 중복 KR 후보 | -| 215 | 고정 해제 | 固定を解除 | `screen_creator_community_unpin` | | 후보 | exact match 후보 | -| 216 | 수정하기 | 編集 | `creator_channel_fantalk_edit` | | 후보 | 중복 KR 후보 | -| 216 | 수정하기 | 編集 | `screen_live_room_update_action` | | 후보 | 중복 KR 후보 | -| 217 | 삭제하기 | 削除 | `creator_channel_fantalk_delete` | | 후보 | exact match 후보 | -| 218 | 크리에이터에게만 보여요. | クリエイターにのみ表示されます。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 219 | 답글쓰기 | 返信する | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 220 | 신고하기 | 通報する | `screen_audio_content_detail_report` | | 후보 | 중복 KR 후보 | -| 220 | 신고하기 | 通報する | `menu_report_action` | | 후보 | 중복 KR 후보 | -| 221 | 댓글을 입력하세요 | コメントを入力 | `creator_channel_community_comment_placeholder` | | 후보 | exact match 후보 | -| 222 | 크리에이터에게 응원의 메세지를 보내주세요! | クリエイターへファンレターを送りましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 223 | 답글을 삭제할까요? | 返信を削除しますか? | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 224 | 답글 삭제 | 返信を削除 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 225 | 크리에이터 | クリエイター | `screen_live_reservation_complete_creator_label` | | 후보 | exact match 후보 | -| 226 | 시리즈 자세히 보기 | シリーズの詳細を見る | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 227 | 소개 | 紹介 | `creator_channel_section_introduce` | | 후보 | exact match 후보 | -| 228 | 장르 | ジャンル | `screen_series_detail_label_genre` | | 후보 | exact match 후보 | -| 229 | 연령 제한 | 年齢制限 | `screen_live_room_create_age_label` | | 후보 | 중복 KR 후보 | -| 229 | 연령 제한 | 年齢制限 | `screen_creator_community_write_age_title` | | 후보 | 중복 KR 후보 | -| 229 | 연령 제한 | 年齢制限 | `screen_audio_content_upload_age_section_title` | | 후보 | 중복 KR 후보 | -| 230 | 소장 | 購入 | `screen_series_detail_price_keep_label` | | 후보 | 중복 KR 후보 | -| 230 | 소장 | 購入 | `audio_content_order_label_keep` | | 후보 | 중복 KR 후보 | -| 231 | 페이지 수 | ページ数 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 232 | 발매일 | 発売日 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 233 | 크리에이터의 다른 화보 | このクリエイターの他のフォト | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 234 | {{화보이름 12자 ...}}와 비슷한 화보 | 「{{화보이름 12자 ...}}」に似たフォト | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 235 | [Premium Photo]의 다른 화보 | 「Premium Photo」の他のフォト | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 236 | 소장하기 | 購入する | `screen_audio_content_detail_action_keep` | | 후보 | exact match 후보 | -| 237 | 스크랩 | クリップ | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 240 | 마음에 드는 페이지를 스크랩하여
감상해 보세요! | お気に入りのページをクリップして
楽しみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 241 | 마지막 페이지 | 最後のページ | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 244 | {{메거진 이름 12자 초과시...}}은 어떠셨나요?
후기를 댓글로 남겨보세요. | 「{{雑誌名...}}」はいかがでしたか
感想をコメントでお聞かせください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 245 | 댓글 쓰기 | コメントを書く | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 246 | 첫 페이지에요. | 最初のページです。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 247 | 오래된순 | 古い順 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 248 | 보관함 | ライブラリ | `screen_message_filter_keep` | | 후보 | 중복 KR 후보 | -| 248 | 보관함 | ライブラリ | `screen_my_storage` | | 후보 | 중복 KR 후보 | -| 249 | 구매 | 購入 | `alarm_list_buy_confirm` | | 후보 | exact match 후보 | -| 250 | 재생목록 | プレイリスト | `screen_audio_content_box_tab_playlists` | | 후보 | exact match 후보 | -| 251 | 최근 | 最近 | `screen_live_latest_finished_prefix` | | 후보 | exact match 후보 | -| 252 | 제목순 | タイトル順 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 253 | 발매순 | 発売日順 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 254 | 대여 | レンタル | `screen_series_detail_price_rental_label` | | 후보 | 중복 KR 후보 | -| 254 | 대여 | レンタル | `audio_content_order_label_rental` | | 후보 | 중복 KR 후보 | -| 255 | 업로드순 | アップロード順 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 258 | 구매한 오디오가 없어요.
관심있는 오디오를 구매해 보세요! | 購入したオーディオはありません。
気になるオーディオを購入してみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 261 | 구매한 화보가 없어요.
관심있는 화보를 구매해 보세요! | 購入したフォトはありません。
気になるフォトを購入してみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 264 | 구매한 커뮤니티 글이 없어요.
좋아하는 크리에이터의 글을 구매해 보세요! | 購入したコミュニティ投稿はありません。
お気に入りのクリエイターの投稿を購入してみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 265 | 나중에 들을 오디오 | あとで聴く | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 268 | 좋아요한 오디오가 없어요.
마음에 드는 오디오에 좋아요를 남겨 보세요! | 「いいね」したオーディオはありません。
お気に入りのオーディオに「いいね」してみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 271 | 좋아요한 화보가 없어요.
마음에 드는 화보에 좋아요를 남겨 보세요! | 「いいね」したフォトはありません。
お気に入りのフォトに「いいね」してみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 274 | 좋아요한 커뮤니티 글이 없어요.
마음에 드는 글에 좋아요를 남겨 보세요! | 「いいね」した投稿はありません。
お気に入りの投稿に「いいね」してみましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 277 | 최근 본 콘텐츠가 없어요.
새로운 콘텐츠를 만나보세요! | 最近見たコンテンツはありません。
新しいコンテンツを見つけましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 280 | 최근 본 오디오가 없어요.
새로운 오디오를 만나보세요! | 最近聴いたオーディオはありません。
新しいオーディオを見つけましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 283 | 최근 본 시리즈가 없어요.
새로운 시리즈를 만나보세요! | 最近見たシリーズはありません。
しいシリーズを見つけましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 286 | 최근 본 화보가 없어요.
새로운 화보를 만나보세요! | 最近見たフォトはありません。
新しいフォトを見つけましょう! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 287 | 충전하기 | チャージ | `screen_can_status_charge_action` | | 후보 | 중복 KR 후보 | -| 287 | 충전하기 | チャージ | `screen_can_charge_title` | | 후보 | 중복 KR 후보 | -| 288 | 현재 보유한 캔 | 現在のカン | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 289 | 사용할 캔 | 使用するカン | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 290 | 사용할 포인트 | 使用するポイント | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 291 | *포인트 일부를 차감하여 대여합니다. | *ポイントを使用してレンタルします。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 292 | 캔이 부족해요! 충전 후 이용해 주세요. | カンが不足しています。チャージしてご利用ください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 293 | 소장이 완료되었어요! | 購入が完了しました! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 294 | 대여가 완료되었어요! | レンタルが完了しました! | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 295 | 구매에 실패했어요. 다시 시도해 주세요. | 購入に失敗しました。もう一度お試しください。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 296 | 오늘 하루 보지 않기 | 今日一日は表示しない | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 297 | 닫기 | 閉じる | `dialog_event_popup_close` | | 후보 | 중복 KR 후보 | -| 297 | 닫기 | 閉じる | `a11y_close` | | 후보 | 중복 KR 후보 | -| 297 | 닫기 | 閉じる | `creator_channel_owner_fab_close` | | 후보 | 중복 KR 후보 | -| 297 | 닫기 | 閉じる | `dialog_close` | | 후보 | 중복 KR 후보 | -| 297 | 닫기 | 閉じる | `screen_live_room_collapse` | | 후보 | 중복 KR 후보 | -| 297 | 닫기 | 閉じる | `screen_live_room_close` | | 후보 | 중복 KR 후보 | -| 297 | 닫기 | 閉じる | `screen_creator_community_write_close` | | 후보 | 중복 KR 후보 | -| 298 | 콘텐츠 보호를 위해 캡처를 지원하지 않아요. | コンテンツ保護のため、スクリーンショットはご利用いただけません。 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 299 | 답글을 입력하세요 | 返信を入力 | `creator_channel_community_reply_placeholder` | | 후보 | exact match 후보 | -| 300 | 전체 인기 | 人気ランキング | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 301 | 현재 보유 | 所持数 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 302 | 활동 | アクティビティ | `creator_channel_section_activity` | | 후보 | exact match 후보 | -| 303 | 익명 | 匿名 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 304 | DM 확인하기 | DMを確認 | `creator_channel_dm_check_button` | | 후보 | exact match 후보 | -| 305 | 예정 | 予定 | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 306 | 대화 찾기 | トークを探す | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | -| 307 | {요일}요 인기 시리즈 | {요일}曜人気シリーズ | `` | | 미매칭 후보 | values/strings.xml exact match 없음 | +| 2 | 홈 | ホーム | `tab_home` | ホーム | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 2 | 홈 | ホーム | `screen_series_detail_tab_home` | ホーム | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 2 | 홈 | ホーム | `screen_series_main_tab_home` | ホーム | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 2 | 홈 | ホーム | `creator_channel_tab_home` | ホーム | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `feed_content_category_default` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `feed_content_category_content` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `tab_content` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `screen_home_recommend_channel_content_label` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `screen_user_profile_content_title` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `screen_search_tab_content` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `screen_search_content_title` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `alarm_add_content_label` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 3 | 콘텐츠 | コンテンツ | `screen_content_main_title` | コンテンツ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 4 | 대화 | トーク | `tab_chat` | チャット | 반영 | CSV JP로 반영 | +| 5 | 마이 | マイページ | `tab_my` | マイ | 반영 | CSV JP로 반영 | +| 6 | 추천 | おすすめ | `screen_home_tab_recommendation` | おすすめ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 6 | 추천 | おすすめ | `screen_content_tab_recommendation` | おすすめ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 7 | 랭킹 | ランキング | `screen_home_tab_ranking` | ランキング | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 7 | 랭킹 | ランキング | `screen_content_tab_ranking` | ランキング | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 8 | 팔로잉 | フォロー中 | `screen_home_following` | フォロー中 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 8 | 팔로잉 | フォロー中 | `screen_home_tab_following` | フォロー中 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 8 | 팔로잉 | フォロー中 | `screen_live_recommend_channel_prefix` | フォロー中 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 9 | 전체 | すべて | `screen_chat_filter_all` | すべて | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 9 | 전체 | すべて | `creator_channel_live_total_label` | 全体 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `creator_channel_audio_total_label` | 全体 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `creator_channel_series_total_content_count` | 全体 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_home_theme_all` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_content_tab_all` | すべて | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 9 | 전체 | すべて | `creator_channel_fantalk_all_label` | 全体 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `creator_channel_donation_all_label` | すべて | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 9 | 전체 | すべて | `screen_new_characters_all_total_label` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_live_room_total_count_label` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_live_room_create_gender_restriction_all` | 全体 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_service_center_faq_category_all` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_user_follower_list_total_label` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_user_profile_donation_total_label` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `dialog_creator_follow_notify_all` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `screen_content_settings_all` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 9 | 전체 | すべて | `audio_content_label_all` | 全 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 10 | 방금 활동한 크리에이터 | 最近活動したクリエイター | `home_recommendation_section_recently_active_creators` | 最近活動したクリエイター | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 11 | 최근 데뷔한 크리에이터 | 新着クリエイター | `home_recommendation_section_recent_debut_creators` | 最近デビューしたクリエイター | 반영 | CSV JP로 반영 | +| 12 | 처음부터 함께 성장! | 今から推せる | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 13 | 크리에이터와 이야기를 나눠요! | クリエイターと話す | `home_recommendation_section_ai_characters` | クリエイターと話しましょう! | 반영 | CSV JP로 반영 | +| 14 | 추천 필모그래피 | おすすめフィルモグラフィー | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 15 | 또 다른 모습 | 写真集 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 16 | {{장르}}의 크리에이터 | のクリエイター | `home_recommendation_section_genre_creator_suffix` | のクリエイター | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 17 | 최근 응원이 많은 크리에이터 | 最近応援の多いクリエイター | `home_recommendation_section_cheer_creators` | 最近応援が多いクリエイター | 반영 | CSV JP로 반영 | +| 18 | 인기 커뮤니티 | 人気コミュニティ | `home_recommendation_section_popular_community_posts` | 人気コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 19 | 주간 인기 | 週間人気 | `screen_content_ranking_type_weekly_popular` | 週間人気 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 20 | 지금 뜨는 중 | 急上昇 | `screen_content_ranking_type_rising` | 急上昇 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 21 | 남성 인기 | 男性人気 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 22 | 여성 인기 | 女性人気 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 23 | 최근 대화 | 最近のトーク | `screen_home_following_recent_chats_title` | 最近のチャット | 반영 | CSV JP로 반영 | +| 24 | 이달의 스케줄 | 今月のスケジュール | `screen_home_following_monthly_schedules_title` | 今月のスケジュール | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 25 | 최근 소식 | 最新情報 | `screen_home_following_recent_news_title` | 最近のお知らせ | 반영 | CSV JP로 반영 | +| 26 | {{크리에이터 이름}}님이 이번 주 랭킹 n위에 올랐어요! | %1$sが今週のランキングで%2$sにランクイン! | `screen_home_following_creator_ranking_news_message` | %1$sさんが今週のランキング%2$sに入りました! | 반영 | placeholder 후보; Android placeholder/suffix 형식으로 반영 | +| 28 | 아직 팔로우한 크리에이터가 없어요. 관심 있는 크리에이터를 팔로우해 보세요. | まだフォローしているクリエイターがいません。
気になるクリエイターをフォローしてみましょう。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 29 | 찾아보기 | 探す | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 30 | 오직 보이스온에서만! | VOICE ON限定 | `content_recommendation_section_original_series` | Voice Onだけで! | 반영 | CSV JP로 반영 | +| 31 | 새로 올라온 오디오 | 新着オーディオ | `content_recommendation_section_latest_audio` | 新着オーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 32 | 추천 시리즈 | おすすめシリーズ | `screen_series_main_recommend_title` | おすすめシリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 32 | 추천 시리즈 | おすすめシリーズ | `audio_content_recommend_series_title` | おすすめシリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 33 | 무료 오디오 | 無料オーディオ | `content_recommendation_section_free_audio` | 無料オーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 34 | 포인트 오디오 | ポイントオーディオ | `content_recommendation_section_point_audio` | ポイントオーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 35 | 최근 댓글이 많은 오디오 | 最近コメントの多いオーディオ | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 36 | {{키워드}}의 오디오 | {{キーワード}}のオーディオ | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 37 | 추천 오디오 | おすすめオーディオ | `content_recommendation_section_recommended_audio` | おすすめオーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 38 | 매출 | 売上 | `screen_home_sort_revenue` | 売上 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 38 | 매출 | 売上 | `screen_content_ranking_type_revenue` | 売上 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 39 | 판매량 | 販売数 | `screen_home_sort_sales_count` | 販売数 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 39 | 판매량 | 販売数 | `screen_content_ranking_type_sales_count` | 販売数 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 40 | 댓글수 | コメント数 | `screen_content_ranking_type_comment_count` | コメント数 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 41 | 좋아요 | いいね | `screen_home_sort_like_count` | いいね | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 41 | 좋아요 | いいね | `screen_content_ranking_type_like_count` | いいね | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 42 | 오디오 | オーディオ | `screen_content_all_type_audio` | オーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 42 | 오디오 | オーディオ | `home_recommendation_activity_audio` | オーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 42 | 오디오 | オーディオ | `creator_channel_tab_audio` | オーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 42 | 오디오 | オーディオ | `creator_channel_section_audio` | オーディオ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `feed_content_category_series` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `screen_content_all_type_series` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `creator_channel_tab_series` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `creator_channel_section_series` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `screen_user_profile_series_title` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `screen_search_tab_series` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `screen_search_series_title` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 43 | 시리즈 | シリーズ | `audio_content_home_tab_series` | シリーズ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 44 | 오리지널 | オリジナル | `screen_content_all_type_original` | オリジナル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `screen_live_now_all_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `screen_content_all_type_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `live_reservation_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `screen_live_room_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `screen_live_room_create_price_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `screen_creator_community_write_price_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `screen_audio_content_upload_price_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `audio_content_price_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `audio_content_tag_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 45 | 무료 | 無料 | `audio_content_home_tab_free` | 無料 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 46 | 포인트 | ポイント | `screen_content_all_type_point` | ポイント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 46 | 포인트 | ポイント | `screen_user_profile_latest_content_point` | ポイント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 46 | 포인트 | ポイント | `audio_content_badge_point` | ポイント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 47 | 화보 | フォト | `screen_home_following_photo_content` | グラビア | 반영 | CSV JP로 반영 | +| 48 | 최신순 | 最新順 | `screen_series_content_sort_newest` | 最新順 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 48 | 최신순 | 最新順 | `screen_audition_sort_newest` | 最新順 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 48 | 최신순 | 最新順 | `screen_audio_content_sort_newest` | 最新順 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 49 | 추천순 | おすすめ順 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 50 | 인기순 | 人気順 | `screen_audio_content_sort_popularity` | 人気順 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 51 | 높은 가격순 | 高い順 | `screen_audio_content_sort_price_high` | 価格が高い順 | 반영 | CSV JP로 반영 | +| 52 | 낮은 가격순 | 安い順 | `screen_audio_content_sort_price_low` | 価格が低い順 | 반영 | CSV JP로 반영 | +| 53 | 소장순 | 保有順 | `creator_channel_live_sort_owned` | 所持順 | 반영 | CSV JP로 반영 | +| 54 | 팔로우 | フォロー | `screen_home_follow` | フォロー | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 54 | 팔로우 | フォロー | `creator_channel_follow_button` | フォロー | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 55 | 팔로워 | フォロワー | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 56 | 대화하기 | トークする | `creator_channel_chat_button` | トークする | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 56 | 대화하기 | トークする | `character_detail_chat_button` | トークする | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 57 | DM 보내기 | DMを送る | `creator_channel_dm_button` | DMを送る | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `tab_live` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `home_recommendation_section_live` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `home_recommendation_activity_live` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `creator_channel_tab_live` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `screen_live_reservation_title_prefix` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `screen_live_replay_prefix` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 58 | 라이브 | ライブ | `screen_user_profile_live_title` | ライブ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `home_recommendation_activity_community` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `creator_channel_tab_community` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `creator_channel_section_community` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `creator_channel_community_detail_title` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `screen_live_community_title` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `screen_user_profile_community_title` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 59 | 커뮤니티 | コミュニティ | `screen_creator_community_all_title` | コミュニティ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 60 | 팬Talk | ファントーク | `creator_channel_tab_fantalk` | ファンTalk | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 60 | 팬Talk | ファントーク | `creator_channel_section_fantalk` | ファンTalk | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 61 | 후원 | サポート | `creator_channel_tab_donation` | 応援 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 61 | 후원 | サポート | `creator_channel_section_donation` | 応援 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 61 | 후원 | サポート | `screen_audio_content_detail_donation` | ギフト | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 62 | 팬레터 | ファンレター | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 63 | 후원하기 | サポートする | `creator_channel_donation_button` | 応援する | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 63 | 후원하기 | サポートする | `creator_channel_donation_action` | 応援する | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 63 | 후원하기 | サポートする | `screen_live_room_donation_title` | ギフトする | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 64 | 공지 | お知らせ | `creator_channel_section_notice` | お知らせ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 64 | 공지 | お知らせ | `creator_channel_community_notice` | お知らせ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 64 | 공지 | お知らせ | `screen_live_room_notice` | 告知 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 65 | 스케줄 | スケジュール | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 66 | 전체보기 | すべて見る | `view_all` | すべて見る | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 66 | 전체보기 | すべて見る | `screen_series_main_completed_all` | すべて見る | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 66 | 전체보기 | すべて見る | `creator_channel_donation_ranking_all` | すべて見る | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 67 | 전체 오디오의 n%를 소장하고 있어요. | 全オーディオの%1$s%%を所持しています。 | `creator_channel_audio_owned_rate_message` | 全オーディオの%1$s%%を所持しています。 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 68 | 전체 화보의 n%를 소장하고 있어요. | 全フォトのn%を所持しています。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 69 | 전체소장 | 全話購入 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 70 | 완결 | 完結 | `creator_channel_series_status_completed` | 完結 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 70 | 완결 | 完結 | `screen_home_series_complete` | 完結 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 71 | 연재 | 連載 | `creator_channel_series_status_proceeding` | 連載中 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 71 | 연재 | 連載 | `screen_series_detail_label_published_days` | 連載 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 72 | 소장중 | 保有中 | `audio_content_badge_owned` | 所持中 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 72 | 소장중 | 保有中 | `alarm_select_badge_owned` | 所持中 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 73 | 리스트형 | リスト | `creator_channel_community_view_mode_list` | リスト型 | 반영 | CSV JP로 반영 | +| 74 | 썸네일형 | グリッド | `creator_channel_community_view_mode_grid` | サムネイル型 | 반영 | CSV JP로 반영 | +| 75 | 구매완료 | 購入済み | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 76 | 삭제 | 削除 | `confirm_delete_title` | 削除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 76 | 삭제 | 削除 | `screen_message_detail_action_delete` | 削除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 76 | 삭제 | 削除 | `screen_roulette_config_option_delete` | 削除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 76 | 삭제 | 削除 | `screen_creator_community_record_delete` | 削除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 76 | 삭제 | 削除 | `screen_audio_content_detail_delete` | 削除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 76 | 삭제 | 削除 | `menu_delete_action` | 削除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 77 | 신고 | 通報 | `report_title` | 通報 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 77 | 신고 | 通報 | `report_button` | 通報 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 77 | 신고 | 通報 | `creator_channel_fantalk_report` | 通報 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 78 | 후원 랭킹 | サポートランキング | `creator_channel_donation_ranking_title` | 応援ランキング | 반영 | CSV JP로 반영 | +| 81 | 크리에이터가 라이브를 준비 중입니다.
기대해 주세요! | クリエイターがライブを準備しています。
お楽しみに! | `creator_channel_live_empty_message` | クリエイターがライブを準備中です。
楽しみにお待ちください! | 반영 | CSV JP로 반영 | +| 84 | 크리에이터가 오디오를 준비 중입니다.
기대해 주세요! | クリエイターがオーディオを準備しています。
お楽しみに! | `creator_channel_audio_empty_message` | クリエイターがオーディオを準備中です。
楽しみにお待ちください! | 반영 | CSV JP로 반영 | +| 87 | 크리에이터가 시리즈를 준비 중입니다.
기대해 주세요! | クリエイターがシリーズを準備しています。
お楽しみに! | `creator_channel_series_empty_message` | クリエイターがシリーズを準備中です。
楽しみにお待ちください! | 반영 | CSV JP로 반영 | +| 90 | 크리에이터가 화보를 준비 중입니다.
기대해 주세요! | クリエイターがフォトを準備しています。
お楽しみに! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 93 | 크리에이터가 커뮤니티를 준비 중입니다.
기대해 주세요! | クリエイターがコミュニティを準備しています。
お楽しみに! | `creator_channel_community_empty_message` | クリエイターがコミュニティを準備中です。
楽しみにお待ちください! | 반영 | CSV JP로 반영 | +| 96 | 아직 응원이 없습니다.
처음으로 크리에이터를 응원해 보세요! | まだファンレターがありません。
最初のファンレターを送ってみましょう! | `creator_channel_fantalk_empty_message` | まだ応援がありません。
最初にクリエイターを応援してみましょう! | 반영 | CSV JP로 반영 | +| 97 | 응원 남기기 | ファンレターを送る | `creator_channel_fantalk_support_action` | 応援を残す | 반영 | CSV JP로 반영 | +| 100 | 아직 후원이 없습니다.
처음으로 크리에이터를 후원해 보세요! | まだサポートがありません。
最初のサポートをしてみましょう! | `creator_channel_donation_empty_title` | 最初にクリエイターを
応援してみましょう! | 반영 | CSV JP로 반영 | +| 101 | 당신의 첫 응원을 기다리고 있어요! | あなたの最初のファンレターを待っています! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 102 | 댓글 | コメント | `screen_home_sort_comment_count` | コメント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 102 | 댓글 | コメント | `character_detail_comments_label` | コメント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 102 | 댓글 | コメント | `character_comment_title` | コメント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 102 | 댓글 | コメント | `screen_audio_content_detail_comment_title` | コメント | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 103 | 취소 | キャンセル | `cancel` | キャンセル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 103 | 취소 | キャンセル | `creator_channel_fantalk_write_cancel` | キャンセル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 103 | 취소 | キャンセル | `screen_message_write_cancel` | キャンセル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 103 | 취소 | キャンセル | `screen_live_room_cancel` | キャンセル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 103 | 취소 | キャンセル | `screen_audio_content_upload_cancel` | キャンセル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 104 | 보내기 | 送信 | `creator_channel_fantalk_write_send` | 送信 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 105 | 입력 종료 | 入力終了 | `creator_channel_fantalk_write_exit_title` | 入力終了 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 108 | 입력을 종료할까요?
지금 나가면 입력한 내용이 저장되지 않아요. | 入力を終了しますか?
終了すると、入力内容は保存されません。 | `creator_channel_fantalk_write_exit_desc` | 入力を終了しますか?
今離れると、入力した内容は保存されません。 | 반영 | CSV JP로 반영 | +| 109 | 종료 | 終了 | `creator_channel_fantalk_write_exit_confirm` | 終了 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 110 | 계속 작성 | 続ける | `creator_channel_fantalk_write_exit_cancel` | 続けて書く | 반영 | CSV JP로 반영 | +| 111 | 응원 삭제 | ファンレターを削除 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 114 | 응원을 삭제할까요?
삭제 시 크리에이터의 답글도 같이 사라져요. | ファンレターを削除しますか?
削除すると、クリエイターからの返信も削除されます。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 115 | 오늘 | 今日 | `screen_user_profile_donation_stat_today` | 今日 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 116 | 지금 | 今 | `screen_live_now_title_prefix` | 今 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 117 | 지난 | 終了 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 120 | 아직 대화가 없어요.
크리에이터와 이야기를 시작해 보세요. | まだ会話がありません。
クリエイターと話してみましょう。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 123 | 아직 나눈 AI 채팅이 없어요.
크리에이터와 대화를 시작해 보세요. | まだAIチャットがありません。
クリエイターと会話を始めてみましょう。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 126 | 아직 나눈 대화가 없어요.
좋아하는 크리에이터에게 메세지를 보내보세요. | まだメッセージがありません。
好きなクリエイターにメッセージを送ってみましょう。 | `screen_chat_empty_dm` | まだ会話がありません。
好きなクリエイターにメッセージを送ってみましょう。 | 반영 | CSV JP로 반영 | +| 127 | 크리에이터의 이름을 입력하세요 | クリエイター名を入力 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 128 | 대화 시작 | トーク開始 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 129 | {{크리에이터이름}}님과 AI 채팅 혹은 DM을 시작해 볼까요? | {{クリエイター名}}とAIチャットまたはDMを始めてみませんか? | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 130 | AI 채팅하기 | AIチャット | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 131 | 채팅 설정 | チャット設定 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 132 | 이미지 보관함 | ギャラリー | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 133 | 배경 이미지 설정 | 背景設定 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 134 | 채팅 초기화 | チャットを初期化 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 135 | 신규 크리에이터 | 新着クリエイター | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 136 | 나의 크리에이터 | マイクリエイター | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 137 | AI 캐릭터 채팅 | AIキャラクターチャット | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 138 | 팔로우 해제 | フォロー解除 | `dialog_unfollow_title` | フォロー解除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 141 | 팔로우를 해제할까요?
{{크리에이터이름}}의 소식을 받을 수 없어요. | {{크리에이터이름}}からの最新情報を受け取れなくなります。
フォローを解除しますか? | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 142 | 해제하기 | 解除する | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 143 | 검색어를 입력하세요 | キーワードを入力 | `audio_content_home_search_placeholder` | 検索ワードを入力 | 반영 | CSV JP로 반영 | +| 144 | 전체삭제 | すべて削除 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 145 | 최근 검색 | 最近の検索 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 146 | 인기 검색어 | 急上昇ワード | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 147 | AI 채팅 인기 검색 키워드 | AIチャット急上昇ワード | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 148 | 시리즈 인기 검색 키워드 | シリーズ急上昇ワード | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 149 | 오디오 인기 검색 키워드 | オーディオ急上昇ワード | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 150 | 키워드 | キーワード | `screen_series_detail_section_keywords` | キーワード | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 151 | 검색 결과 | 検索結果 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 152 | 정확도순 | 関連度順 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 153 | 많이 찾는 크리에이터 | 人気のクリエイター | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 156 | 관련 크리에이터가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するクリエイターがいません。
別のキーワードで検索してください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 159 | 관련 시리즈가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するシリーズがありません。
別のキーワードで検索してください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 162 | 관련 화보가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するフォトがありません。
別のキーワードで検索してください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 165 | 관련 키워드가 없어요.
다른 검색어로 다시 찾아보세요. | 該当するキーワードがありません。
別のキーワードで検索してください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 166 | 라이브 시작하기 | ライブを開始 | `creator_channel_live_start_button` | ライブを始める | 반영 | CSV JP로 반영 | +| 167 | 오디오 올리기 | オーディオを投稿 | `creator_channel_audio_upload_button` | オーディオを投稿 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 168 | 커뮤니티 글 올리기 | コミュニティ投稿 | `creator_channel_owner_fab_community` | コミュニティ投稿 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 169 | 이메일을 입력해 주세요 | メールアドレスを入力してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 170 | 이메일 | メールアドレス | `hint_email` | メールアドレス | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 170 | 이메일 | メールアドレス | `screen_profile_update_email_label` | メールアドレス | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 171 | 이용약관 | 利用規約 | `terms_of_service` | 利用規約 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 171 | 이용약관 | 利用規約 | `screen_settings_terms` | 利用規約 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 172 | 개인정보수집 및 이용동의 | 個人情報の収集・利用への同意 | `privacy_policy` | 個人情報収集および利用同意 | 반영 | CSV JP로 반영 | +| 173 | 올바른 이메일을 입력해 주세요 | 正しいメールアドレスを入力してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 174 | 다음으로 | 次へ | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 175 | 이미 가입된 이메일이에요 | 登録済みのメールアドレスです | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 176 | 비밀번호를 입력해 주세요 | パスワードを入力してください | `screen_live_room_password_hint` | パスワードを入力してください | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 177 | 비밀번호 | パスワード | `hint_password` | パスワード | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 177 | 비밀번호 | パスワード | `screen_live_room_password_label` | パスワード | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 177 | 비밀번호 | パスワード | `screen_profile_update_password_label` | パスワード | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 178 | 8자 이상 (영문 대/소문자, 특수문자 포함) | 8文字以上(英大文字・小文字・記号を含む) | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 179 | 완료 | 完了 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 180 | 8자 이상, 영문 대/소문자와 특수문자를 포함해 주세요 | 8文字以上、英大文字・小文字・記号を含めてください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 181 | 이메일로 로그인하기 | メールアドレスでログイン | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 182 | 로그인 | ログイン | `title_login` | ログイン | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 183 | 가입되지 않은 이메일이에요 | 登録されていないメールアドレスです | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 184 | 입력한 비밀번호를 다시 확인해 주세요 | パスワードをもう一度確認してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 185 | 인증코드를 입력해 주세요 | 認証コードを入力してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 186 | {email}로 인증코드를 보냈어요 | {email}に認証コードを送信しました | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 187 | 인증코드 | 認証コード | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 188 | 0:00 후에 인증코드 다시 보내기 | 0:00後に認証コードを再送する | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 189 | 인증 가능한 시간을 초과했어요 | 認証可能時間を超過しました | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 190 | 인증코드 다시 보내기 | 認証コードを再送する | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 191 | 올바른 인증코드를 입력해 주세요 | 正しい認証コードを入力してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 192 | 새 비밀번호를 입력해 주세요 | 新しいパスワードを入力してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 193 | 기존 비밀번호와 다르게 설정해 주세요 | 現在のパスワードとは異なるものを設定してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 194 | 비밀번호 설정 완료! | パスワード設定完了! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 197 | 비밀번호 설정을 완료했어요.
다시 로그인해 주세요. | パスワードを設定しました。
もう一度ログインしてください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 198 | 재설정 종료 | 再設定を終了 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 201 | 지금 나가면 현재 진행중인 재설정이 종료되고,
처음부터 다시 진행해야 해요. | 終了すると、進行中の再設定が終了し、
最初からやり直す必要があります。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 202 | 계속 재설정 | 再設定を続ける | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 203 | AI 채팅 | AIチャット | `screen_chat_filter_ai` | AIチャット | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 204 | 전체 크리에이터 | すべてのクリエイター | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 205 | 필수 | 必須 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 207 | 가입한 이메일을 입력해 주세요 | 登録メールアドレスを
入力してください | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 208 | 존재하지 않는 이메일이에요 | 登録されていないメールアドレスです | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 209 | 모두 팔로우하기 | すべてフォロー | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 210 | 대여중 | レンタル中 | `audio_content_badge_rented` | レンタル中 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 210 | 대여중 | レンタル中 | `alarm_select_badge_rental` | レンタル中 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 211 | 데뷔 | デビュー | `creator_channel_activity_debut` | デビュー | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 211 | 데뷔 | デビュー | `screen_creator_detail_debut` | デビュー | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 212 | 라이브 총 진행 수 | ライブ配信回数 | `creator_channel_activity_live_count` | ライブ総配信数 | 반영 | CSV JP로 반영 | +| 213 | 라이브 누적 진행 시간 | ライブ累計配信時間 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 214 | 라이브 누적 참여자 | ライブ累計参加者数 | `creator_channel_activity_live_contributor` | ライブ累計参加者 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 214 | 라이브 누적 참여자 | ライブ累計参加者数 | `screen_creator_detail_live_contributor_count` | ライブ累積参加者 | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 215 | 고정 해제 | 固定を解除 | `screen_creator_community_unpin` | 固定を解除 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 216 | 수정하기 | 編集 | `creator_channel_fantalk_edit` | 編集する | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 216 | 수정하기 | 編集 | `screen_live_room_update_action` | 修正する | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 217 | 삭제하기 | 削除 | `creator_channel_fantalk_delete` | 削除する | 반영 | CSV JP로 반영 | +| 218 | 크리에이터에게만 보여요. | クリエイターにのみ表示されます。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 219 | 답글쓰기 | 返信する | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 220 | 신고하기 | 通報する | `screen_audio_content_detail_report` | 通報する | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 220 | 신고하기 | 通報する | `menu_report_action` | 通報する | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 221 | 댓글을 입력하세요 | コメントを入力 | `creator_channel_community_comment_placeholder` | コメントを入力してください | 반영 | CSV JP로 반영 | +| 222 | 크리에이터에게 응원의 메세지를 보내주세요! | クリエイターへファンレターを送りましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 223 | 답글을 삭제할까요? | 返信を削除しますか? | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 224 | 답글 삭제 | 返信を削除 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 225 | 크리에이터 | クリエイター | `screen_live_reservation_complete_creator_label` | クリエイター | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 226 | 시리즈 자세히 보기 | シリーズの詳細を見る | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 227 | 소개 | 紹介 | `creator_channel_section_introduce` | 紹介 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 228 | 장르 | ジャンル | `screen_series_detail_label_genre` | ジャンル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 229 | 연령 제한 | 年齢制限 | `screen_live_room_create_age_label` | 年齢制限 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 229 | 연령 제한 | 年齢制限 | `screen_creator_community_write_age_title` | 年齢制限 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 229 | 연령 제한 | 年齢制限 | `screen_audio_content_upload_age_section_title` | 年齢制限 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 230 | 소장 | 購入 | `screen_series_detail_price_keep_label` | 購入 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 230 | 소장 | 購入 | `audio_content_order_label_keep` | 購入 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 231 | 페이지 수 | ページ数 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 232 | 발매일 | 発売日 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 233 | 크리에이터의 다른 화보 | このクリエイターの他のフォト | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 234 | {{화보이름 12자 ...}}와 비슷한 화보 | 「{{화보이름 12자 ...}}」に似たフォト | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 235 | [Premium Photo]의 다른 화보 | 「Premium Photo」の他のフォト | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 236 | 소장하기 | 購入する | `screen_audio_content_detail_action_keep` | 購入する | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 237 | 스크랩 | クリップ | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 240 | 마음에 드는 페이지를 스크랩하여
감상해 보세요! | お気に入りのページをクリップして
楽しみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 241 | 마지막 페이지 | 最後のページ | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 244 | {{메거진 이름 12자 초과시...}}은 어떠셨나요?
후기를 댓글로 남겨보세요. | 「{{雑誌名...}}」はいかがでしたか
感想をコメントでお聞かせください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 245 | 댓글 쓰기 | コメントを書く | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 246 | 첫 페이지에요. | 最初のページです。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 247 | 오래된순 | 古い順 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 248 | 보관함 | ライブラリ | `screen_message_filter_keep` | コレクション | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 248 | 보관함 | ライブラリ | `screen_my_storage` | コレクション | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 249 | 구매 | 購入 | `alarm_list_buy_confirm` | 購入 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 250 | 재생목록 | プレイリスト | `screen_audio_content_box_tab_playlists` | プレイリスト | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 251 | 최근 | 最近 | `screen_live_latest_finished_prefix` | 最近 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 252 | 제목순 | タイトル順 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 253 | 발매순 | 発売日順 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 254 | 대여 | レンタル | `screen_series_detail_price_rental_label` | レンタル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 254 | 대여 | レンタル | `audio_content_order_label_rental` | レンタル | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 255 | 업로드순 | アップロード順 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 258 | 구매한 오디오가 없어요.
관심있는 오디오를 구매해 보세요! | 購入したオーディオはありません。
気になるオーディオを購入してみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 261 | 구매한 화보가 없어요.
관심있는 화보를 구매해 보세요! | 購入したフォトはありません。
気になるフォトを購入してみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 264 | 구매한 커뮤니티 글이 없어요.
좋아하는 크리에이터의 글을 구매해 보세요! | 購入したコミュニティ投稿はありません。
お気に入りのクリエイターの投稿を購入してみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 265 | 나중에 들을 오디오 | あとで聴く | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 268 | 좋아요한 오디오가 없어요.
마음에 드는 오디오에 좋아요를 남겨 보세요! | 「いいね」したオーディオはありません。
お気に入りのオーディオに「いいね」してみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 271 | 좋아요한 화보가 없어요.
마음에 드는 화보에 좋아요를 남겨 보세요! | 「いいね」したフォトはありません。
お気に入りのフォトに「いいね」してみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 274 | 좋아요한 커뮤니티 글이 없어요.
마음에 드는 글에 좋아요를 남겨 보세요! | 「いいね」した投稿はありません。
お気に入りの投稿に「いいね」してみましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 277 | 최근 본 콘텐츠가 없어요.
새로운 콘텐츠를 만나보세요! | 最近見たコンテンツはありません。
新しいコンテンツを見つけましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 280 | 최근 본 오디오가 없어요.
새로운 오디오를 만나보세요! | 最近聴いたオーディオはありません。
新しいオーディオを見つけましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 283 | 최근 본 시리즈가 없어요.
새로운 시리즈를 만나보세요! | 最近見たシリーズはありません。
しいシリーズを見つけましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음; CSV JP 오탈자 의심(최종 확인 필요) | +| 286 | 최근 본 화보가 없어요.
새로운 화보를 만나보세요! | 最近見たフォトはありません。
新しいフォトを見つけましょう! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 287 | 충전하기 | チャージ | `screen_can_status_charge_action` | チャージする | 반영 | 중복 KR 후보; CSV JP 우선 반영 | +| 287 | 충전하기 | チャージ | `screen_can_charge_title` | チャージ | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 288 | 현재 보유한 캔 | 現在のカン | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 289 | 사용할 캔 | 使用するカン | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 290 | 사용할 포인트 | 使用するポイント | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 291 | *포인트 일부를 차감하여 대여합니다. | *ポイントを使用してレンタルします。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 292 | 캔이 부족해요! 충전 후 이용해 주세요. | カンが不足しています。チャージしてご利用ください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 293 | 소장이 완료되었어요! | 購入が完了しました! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 294 | 대여가 완료되었어요! | レンタルが完了しました! | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 295 | 구매에 실패했어요. 다시 시도해 주세요. | 購入に失敗しました。もう一度お試しください。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 296 | 오늘 하루 보지 않기 | 今日一日は表示しない | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 297 | 닫기 | 閉じる | `dialog_event_popup_close` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 297 | 닫기 | 閉じる | `a11y_close` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 297 | 닫기 | 閉じる | `creator_channel_owner_fab_close` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 297 | 닫기 | 閉じる | `dialog_close` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 297 | 닫기 | 閉じる | `screen_live_room_collapse` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 297 | 닫기 | 閉じる | `screen_live_room_close` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 297 | 닫기 | 閉じる | `screen_creator_community_write_close` | 閉じる | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 298 | 콘텐츠 보호를 위해 캡처를 지원하지 않아요. | コンテンツ保護のため、スクリーンショットはご利用いただけません。 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 299 | 답글을 입력하세요 | 返信を入力 | `creator_channel_community_reply_placeholder` | 返信を入力してください | 반영 | CSV JP로 반영 | +| 300 | 전체 인기 | 人気ランキング | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 301 | 현재 보유 | 所持数 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 302 | 활동 | アクティビティ | `creator_channel_section_activity` | 活動 | 반영 | CSV JP로 반영 | +| 303 | 익명 | 匿名 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 304 | DM 확인하기 | DMを確認 | `creator_channel_dm_check_button` | DMを確認 | 변경 없음 | HEAD 기준 기존 JA와 목표 값 동일 | +| 305 | 예정 | 予定 | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 306 | 대화 찾기 | トークを探す | | | 제외 | values/strings.xml exact/placeholder match 없음 | +| 307 | {요일}요 인기 시리즈 | {요일}曜人気シリーズ | | | 제외 | values/strings.xml exact/placeholder match 없음 |