Ayato-kosaka / spelieve

1 stars 0 forks source link

【BUG】WEB を英語で開いても日本語の Page Title が出る。 #964

Open Ayato-kosaka opened 5 months ago

Ayato-kosaka commented 5 months ago

Bug report

Describe the bug

A clear and concise description of what the bug is.

To Reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior

A clear and concise description of what you expected to happen.

Screenshots

If applicable, add screenshots to help explain your problem.

Environment

Additional context

Add any other context about the problem here.


Solution result

Cause (バグの原因)

多言語対応の設計考慮漏れ。 アプリケーション内のi18nの実装漏れを検知する仕組みを用意しているが、全てを対応出来ていない。

該当のコード(web) https://github.com/Ayato-kosaka/spelieve/blob/2e976cfdb13a64de07a3eaacf98f7a448a1d9973/src/Common/Navigation/Navigation.tsx#L59

該当のコード(native) https://github.com/Ayato-kosaka/spelieve/blob/2e976cfdb13a64de07a3eaacf98f7a448a1d9973/app.config.ts#L6

How to fix (どのようにして解決したか)

■ src 配下のi18nの実装漏れ 検知する仕組みを作成し、横展開含めて修正を実施。 完全にはカバー出来ないが、暫定、以下を対象とする。 ・JsxText リテラル ・18n対応していない日本語リテラル

また、この検知の仕組みを継続的に流す仕組みを用意していなかったため、再発防止対策として Github Actions に組み込み

■ config ファイルの多言語化 app.name => 多言語化する方法がわからない。~XXX~の記載がないアプリが多いので、外してSpelieveだけで良い。 app.description => 何に利用されているか不明。英語でかつAppStoreConnect と違うものにして静観。

横展開として、app config のプロパティの見直し

Ayato-kosaka commented 5 months ago

i18n の適応漏れ。 要 roll out

Ayato-kosaka commented 2 months ago

spelieve-code-analysis/src/extractJsxText.ts を流してみたけど、引っかからないな。 → これは JsxText だけだから

18n対応していない日本語リテラルを全部観る。 → https://github.com/Ayato-kosaka/spelieve-code-analysis/commit/4381e722b91bf45ed6c6dbcb2962af85468a5cec で対応

Ayato-kosaka commented 2 months ago

残TODO

Ayato-kosaka commented 2 months ago

■ config ファイルの修正予定について app.confing.json を修正する。 name -> Spelieve だけでよい descriptin -> よくわからない。とりあえず英語にしておくか。

■ 検討事項 ・description って何に使われている?使われていないなら要らなくないか? ・アプリ内検索でどのように出すか。 ・Configuring EAS Metadata を利用して面倒なアプリのアップデートを回避できないか?(レビューとかは残る)  → OTA update で良くないか?

Ayato-kosaka commented 2 months ago

984bca7f7b5286bff97afea95d8359f498b23f50 #835 で spelieve-code-analysis/checkMissingI18nEntries.ts をCI化

Ayato-kosaka commented 2 months ago

後片付け未済のため再オープン

Ayato-kosaka commented 2 months ago

iOS に上手くリリース出来ない。 原因→Credentials の有効期限がExpire しているみたい。 対応→#250 を参考に Credentials を更新

↓ 以下のエラーが発生

Invalid Provisioning Profile for Apple App Store distribution. The application was signed with an Ad Hoc/Enterprise Provisioning Profile, which is meant for "Internal Distribution". In order to distribute an app on the store, it must be signed with a Distribution Provisioning Profile. Ensure that you are submitting the correct build, or rebuild the application with a Distribution Provisioning Profile and submit that new build.
Failed to submit the app to the store

→ GithubActions 流し直し解決(Submit のみ流し直しだと治らなかった。Buildからやり直しが必要だった)

↓ 以下のエラーが発生

[altool] 2024-06-04 18:41:20.861 *** Error: Asset validation failed SDK version issue. This app was built with the iOS 16.1 SDK. All iOS and iPadOS apps must be built with the iOS 17 SDK or later, included in Xcode 15 or later, in order to be uploaded to App Store Connect or submitted for distribution. (ID: 7f534fe6-053f-4032-8c8e-2d7d147d8808) (90725)

expo upgrade を実施( 3dd2f1e3a052deeffcbb668e547e10626bd14baa )

↓ firebase hosting へのデプロイ後、アイコンが表示されない → d0275a87c98ff31bd8ec5124c44e59bd42487007 で修正