😀

expoで作成したiOSアプリがAppleからRejectされたので直す

2022/12/25に公開

数日前にiOSアプリを作成してApp Store Contactを使ってApp Store公開申請をしました。
ですが、Appleからの申請結果はRejectでした。。。
AppleからのReject理由をもとに修正方法をまとめていきます。

Guideline 1.5 - Safety - Developer Information

Guideline 1.5 - Safety - Developer Information

The support URL specified in your app’s metadata, https://github.com/naonaorange/bacomark, does not properly navigate to the intended destination.

Specifically, it does not does not include any contact information.
Next Steps

To resolve this issue, please revise your app’s support URL to ensure it directs users to a webpage with support information.`
サポートURLについての内容です。
「contact informationを含んでいない」と言われているので問い合わせ先が無いのが理由みたいです。
githubのアプリトップページをリンクしているのでissueで問い合わせてくれよ、、、と思いますが、一般の人はそこまでわからないのかもしれません。
変更内容としては、githubのreadmeに問い合わせ先のメールアドレスを記載しました。

Guideline 2.1 - Information Needed

Guideline 2.1 - Information Needed


We have started the review of your app, but we are not able to continue because we need a demo QR code or AR marker (image) to fully assess your app features.

Specifically, please provide us the demo barcode.

Next Steps

To help us proceed with the review of your app, please provide the demo details in the App Review Information section for your app in App Store Connect or reply to this message with the requested demo information. Please ensure that the information you provide includes any data necessary to demonstrate the functionality of your app features.

To provide QR codes or images information:

- Log in to App Store Connect
- Click on "My Apps"
- Select your app
- Click on the app version on the left side of the screen
- Scroll down to "App Review Information"
- Provide information in "Notes" as appropriate
- Click "Save"
- Once you've completed all changes, click the "Save" button at the top of the Version Information page.

申請したiOSアプリはカメラでバーコードを読み込む機能がついています。
その機能を確認する際にダミーのバーコードがないから確認できないよということですね。
変更方法としてはダミーのバーコードの画像をApp Review Informationに追加します。

Guideline 4.0 - Design

Guideline 4.0 - Design


We noticed an issue in your app that contributes to a lower quality user experience than Apple users expect:

- Your app's modal alerts are in English, but your app's primary language is Japanese. To help users understand why your app is requesting access to a specific feature, your app's modal alerts should be in the same language as the rest of your app.

Next Steps

To resolve this issue, please revise your app to address all instances of this type of issue.

Resources

For information on improving and enhancing your app:

- Review the UI Design Dos and Don’ts for tips on fundamental design best practices.
- Watch the video The Ingredients of Great Apps to understand the basics of great apps.
- Watch the video iPhone and iPad User Interface Design for practical design tips.
- Watch iOS Development Videos to learn about programming and design tips.
- Review the iOS Human Interface Guidelines and ensure that your app's interface and design adhere to these guidelines.

アプリの中で使用する言語は統一しなさいということですね。
今回作成したアプリは日本語しか記載していませんが、カメラ起動時などにOSから直接ポップアップされるものについてはデフォルトで英語になっているようです。
設定で日本語に変更します。
expoでアプリを作成したので、app.jsonを変更します。

    "ios": {
      "infoPlist": {
        "CFBundleLocalizations" : ["ja"],
        "CFBundleDevelopmentRegion" : "ja_JP"
      },
    },

https://stackoverflow.com/questions/58424817/is-there-any-way-to-translate-context-menu-according-to-phone-language-in-react

Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage

Guideline 5.1.1 - Legal - Privacy - Data Collection and Storage


We noticed that your app requests the user’s consent to access the camera but does not clarify the use of the camera in the applicable purpose string.

To help users understand why your app is requesting access to their personal data, all permission request alerts in your app should specify how your app will use the requested feature.

Next Steps

Please revise the relevant purpose string in your app’s Info.plist file to specify why the app is requesting access to the camera. Make sure the purpose string includes an example of how the user's data will be used.

You can modify your app's Info.plist file using the property list editor in Xcode.

Resources

カメラ機能を使う時にはユーザーに許可を求めます。
その際に使用理由を明示してくださいということですね。
expoでアプリを作成したので、app.jsonを変更します。

    "ios": {
      "infoPlist": {
        "NSCameraUsageDescription": "This app uses the camera to scan barcodes on products."
      },
    },

https://tech.maricuru.com/entry/2018/07/27/195921
https://docs.expo.io/distribution/app-stores/?redirected

GitHubで編集を提案

Discussion