🚀

Common Publish Issue

💡
If you have trouble when publishing the Flutter to App Store or Google Play Following solutions could save your days

Issue 8: Deep link issue [Android]

You can ignore this issue, it will not affect your application. If not, you can refer to the solution below. But please note that when you open your website on a mobile phone, it will open the app instead of the browser.

  1. Get your Digital Asset Links JSON on Google Play Console and put this content into a JSON file assetlinks.json (Recommend)
    1. notion image
  1. Or create a JSON file assetlinks.json like the following example and replace package_name and sha256_cert_fingerprints with your one
    1. [ { "relation": [ "delegate_permission/common.handle_all_urls" ], "target": { "namespace": "android_app", "package_name": "[your-bundle-id]", "sha256_cert_fingerprints": [ "[your-SHA-256]" ] } } ]
    2. If you are using Play App Signing, please find your SHA-256 key here on Google Play Console (Recommend)
      1. notion image
    3. Or if you are Self-signing Your Application, please refer to this guide to get SHA-256 from your KeyStore file Authenticating Your Client  |  Google Play services  |  Google for Developers
notion image
  1. Then upload and publish this JSON file to this location on your website https://[your-website]/.well-known/assetlinks.json. Please make sure Google can access this link without any restrictions and redirect
  1. Go to your Google Play Console again and press Recheck verification button
notion image
notion image
 
You can refer to Google document: Verify Android App Links  |  Android Developers

Issue 7: Android crash on Google Pre-Release report [Android]

⚠️
Flutter app crashes on /lib/arm64 - couldn't find "libflutter.so"
If you're getting the error above from a pre-release report or any testing phrases, don't worry, you will still be able to fully publish your app.
This seems to be a bug from one of google's test virtual machines and is related to flutter because Flutter does not currently support building for x86 Android (source) So, please ignore this error and continue to the production release.
You can refer to this issue from Flutter team
Android crash: Fatal Exception: java.lang.RuntimeException java.util.concurrent.ExecutionException: java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader[DexPathList[[zip file "/system/framework/android.test.runner.jar", zip file "/system/framework/org.apache.http.legacy.boot.jar"........
Updated Feb 8, 2024

Issue 6: Advertising ID declaration (gms.permission.AD_ID) [Android]

Because we use Firebase Analytics in the project so Google can reject the app with this issue
Solution: Set your app to use advertising ID.
notion image
notion image
 

Issue 5: Unicode App name issue

When using the release v3.3.0, there may have an issue with the App name if using a Unicode Character, for example, Arabic or Vietnamese language.
Solution: Update file android/app/src/main/AndroidManifest.xml and replace ${appName} by your new App name
notion image

Issue 4: Why does the new version require Privacy [iOS]

Your app contains NSUserTrackingUsageDescription, which indicates that it has to request permission to track users. To update this information on your app's product page, you must indicate what types of data track users. If not, update your app binary file and upload a new build to App Store Connect. Why does the new version require Privacy - Tracking Usage Description permission?
Solution/Answer
Solution 1: Update App Privacy
  • Login to App Dashboard on Apple > Select App Privacy
  • Update the Data Collection to Yes
    • notion image
  • Update the Usage Data, enable the option Analytics
    • notion image
      notion image
 
Solution 1.1: Update App Privacy
Follow the instructions in the image below:
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
notion image
 
Solution 2: Remove google_mobile_ads google analytic and flutter_facebook_auth
  • Comment or remove the google_mobile_ads - file pubspec.yaml
    • notion image
  • Comment or remove the whole file lib/modules/advertisement/google_advertisement.dart
    • notion image
  • Comment or remove the code as screenshot on file lib/modules/advertisement/advertisement_mixin.dart
    • notion image
       
  • Similar for flutter_facebook_auth, search flutter_facebook_auth.dart and remove the
 

Issue 3: QUERY_ALL_PACKAGES permission and Data safety [Android]

If you get the warning from Google Play about the QUERY_ALL_PACKAGE policy issue
Solution:
To resolve this issue, please make sure that you're using our latest source code (version 3.10.5 or later) to build your application (apk or abb file).
Once you've done that, you'll need to create new releases to replace the old versions on Google Play. Don't forget to increase the version number of your app as well.
In addition, please double-check the other tracks Internal Testing, Closed Testing, and Open Testing (if one of them has the old version of your app). Deactivate any old versions that may be using QUERY_ALL_PACKAGES by creating a new release and uploading the latest file there, as shown in this image: https://take.ms/06VmB2

Issue 2: Invalid Data safety section [Android]

The FluxStore app content the advertisement feature google_mobile_ads
Detail issue
Issue: Invalid Data safety section We reviewed your app's Data safety section in Play Console and found discrepancies between it and how the app collects and shares user data. All apps are required to complete an accurate Data safety section that discloses their data collection and sharing practices - this is a requirement even if your app does not collect any user data. We detected user data transmitted off device that you have not disclosed in your app's Data safety section as user data collected. Issue details We found an issue in the following area(s): Policy Declaration for Play Safety Label: Location Data Type - Precise Location Starting in February 2022, Data safety sections reviewed and approved will start appearing to users; make any changes needed by then. Starting April 2022, your app must be in compliance with this policy or app updates will be rejected. If your app continues to be non-compliant beyond April 2022 your app may face additional enforcement actions in the future. Please make changes to align your app's Data safety section with the app's behavior. This can be done by either: Updating your form in Play Console to declare collection of Data Types noted below; or Removing unwanted functionality and attributable code that collects this user data from your app or libraries used in your app, and when applicable to deactivate all non-compliant APKs. To deactivate non-compliant APKS, you can create a new release and upload a compliant APK to each track containing the non-compliant APKs. Be sure to increment the APK version code. If using staged rollout, be sure to set the release to 100% rollout.
Solution 1: Open Google Play ConsoleApp content and Start the Data safety form
  1. Overview click next
  1. Answer the questions (then next):
      • Does your app collect or share any of the required user data types? = yes
      • Is all of the user data collected by your app encrypted in transit? = yes
      • Do you provide a way for users to request that their data is deleted? = yes
  1. go to Device or other IDs / Precise location and check it then next
Precise Location
About the Data safety section in Google Play User Data policy
  1. check Device or other IDs / Precise location and manage it
  1. answer the questions
      • Is this data collected, shared, or both? = Collected
      • Is this data processed ephemerally? = yes
      • Is this data required for your app, or can users choose whether it's collected? = Users can choose whether this data is collected
      • Why is this user data collected? = check App functionality
  1. then save
  1. click next and save and app will review and approved by play store team
notion image
Examples screenshots
notion image
notion image
notion image
notion image
 
notion image
notion image
Ref: https://stackoverflow.com/questions/71199143/action-required-your-app-is-not-compliant-with-google-play-policies-what-is-t
 
Solution 2: Remove the google_mobile_ads library
  • Comment google_mobile_ads from lib/pubspec.yaml
    • notion image
 
  • Comment follow code from lib/modules/advertisement/advertisement_mixin.dart
    • notion image
notion image
 

Issue 1: Invalid Meta Data

You app may be rejected by violations the App naming policies from Google Play Store.
notion image
① ALL CAPS although not part of brand name       
② Special character sequences that are irrelevant to the app        
③ Use of emojis, emoticons(including kaomojis), and special characters        
④ Misleading symbol       
⑤ Misleading text