Google Play Rejects My flutter app because of REQUEST_INSTALL_PACKAGES - android

enter image description hereMy flutter app was rejected because of REQUEST_INSTALL_PACKAGES, I checked all the permissions in my project and I found this permission was used in open_file package.
I tried almost all the solutions but nothing worked for me. I tried open_filex and open_file_safe packages and no thing worked.
Any one has a solution?
open_file, open_file_safe, open_filex,
open_filex:
git:
url: https://github.com/GoldenSoju/open_file.git

First try this one
open_file_safe
If you still facing REQUEST_INSTALL_PACKAGES issue, you can try these:
In Play console (your affected app), click App Content under Policy
Look for Sensitive permissions and APIs and click Start.
Select APKs and bundles, the list will show you the build and track
that contain sensitive permission/API.
Navigate to the affected track, create a new release without uploading
any apk/bundle (or upload a clean build to replace the existing one), and give a
Release name and submit to review.
Navigate to Publishing overview and check whether the review is
pending to submit, if any, send the review.
Reference

Related

How to remove REQUEST_INSTALL_PACKAGES from previous verison

In previous version of my app I used open_file and unfortunately it used REQUEST_INSTALL_PACKAGES permission.
Now I delete this permission and changed package now Im using open_filex.
Added this code to my manifest file.
<uses-permission
android:name="android.permission.REQUEST_INSTALL_PACKAGES"
tools:node="remove"/>
But can not publish my new version. Google wants me fill the "Sensitive permissions and APIs" - part witch I don't now what case I should to choose.
How can I solve this problem ?
I also tried to add new release in Internal testing but couldn't
I had the same problem, i solved changing the plugin for this:
open_filex
This package is a fork of open_file to fix the following issues:
-Remove REQUEST_INSTALL_PACKAGES permission in Android to comply with GooglePlay publish policies
Remove that code from AndroidManifest. Not required.
Alternatively check if the new package you added contains the permission.
open_file_safe worked for me.
I got this message from Google support.
Thanks for contacting Google Play Developer Support and we apologize for not addressing your query as quickly as expected. We are currently experiencing a huge inflow of support requests which caused the delay in responding to your email.
Your app com.copafacil is not compliant with the Permissions policy. Currently, your app still contains the following permissions in version code 140 (2.49):
android.permission.REQUEST_INSTALL_PACKAGES
After removing these permissions, you can submit a new release with the APK that does not contain these permissions to replace the current active APKs.
The Play Console may still be prompting you to submit a Permissions Declaration Form if you still have active APKs in different tracks. If you have active APKs with permissions in multiple tracks, you have to submit Permissions Declaration Form and update all active tracks with APKs with the permissions. When updating the last track, the form will not be needed. You can also not include or create an empty release (a release without any APKs) for testing tracks as part of this.
To release a new compliant APK, please follow these steps:
Go to your Play Console.
Select the app.
On the left menu, select Release and choose the track (Production or Testing > Open/Closed/Internal) which includes sensitive permissions.
Click “Create new release” or “Manage Track”.
a. Suggested order (if tracks have non-compliant APKs): Internal track > Closed > Open > Production.
If you are required to complete Permissions Declaration Form while releasing the app, please complete the form according to the following instructions:
a. Choose one core functionality (e.g. Default SMS handler) to make a release with compliant APK. This release may automatically lead to rejection but this will not include the non-compliant APK(s) in the track.
Select Save > Review at the bottom of the page.
Click Start Rollout.
a. Please ensure that the new release is rolled out 100% and completely not including the non-compliant APK.
Go back to step 1 to make another release in the track where non-compliant APK(s) are in active status until there is no active APK with sensitive permissions across tracks.
Thanks for working with us through this process and please let us know if you have any further questions.

Google Play rejects app even after removing sensitive permission from app

Our app on Google Play has been rejected because it used sensitive permission REQUEST_INSTALL_PACKAGES.
Firstly we filled permission declaration form but it has been rejected. So we decided to remove this permission from our app.
We uploaded a new APK without this permission but again it has been rejected.
Why it has been rejected? In the google response there is a message:
We found issues in the following areas
APK 1
APK 5
... and so on
Why old apk's are listed there? These APKs are on closed testing tracks but all tests have been paused (Is there any option to delete these tracks? Maybe we should delete them but as I can see here, it is not possible). I read these posts:
https://stackoverflow.com/a/70111717/13363205
https://stackoverflow.com/a/69933431/13363205
https://stackoverflow.com/a/67321821/20598102
https://bapspatil.medium.com/dear-googles-permissions-declaration-form-can-we-break-up-85bc6b62f690
Am I correct that on every track we should upload a new version of an app without this permission so the error will be gone and we will be able to upload new app? Or maybe there is any other better option to do it?
I am currently stuck in the same problem, and here is what I finally did.
Fix all the issues that they mentioned in the emails they sent you.
Create a new build with increased version code and version number.
Wait for the previous review process in the play console to get rejected in all tracks.
Note: Don't upload the new version until the previous review rejects your app.
After rejection, upload the new version and then create a new release in each track (Internal, Open, Closed and Production).
Finally, wait and hope for the best. If everything goes right your app will be published.
Method 2: After fixing everything, change the package name of your app and create a new app in the play console and publish it there.
To change the package name of your app follow this: Rename package in Android Studio

Getting please set the query parameter changesNotSentForReview to true while releasing Android App from appcenter.ms

I am trying to build and distribute android app from appcenter.ms. Initially I got rejection after rolling out 3rd update and I tried to rebuild changes. But while distributing to store I got following issue.
Edit could not be committed due to an error. Changes cannot be sent
for review automatically. Please set the query parameter
changesNotSentForReview to true. Once committed, the changes in this
edit can be sent for review from the Google Play Console UI.
I don't want to make changes from Google Play Console UI and want to make changes from appcenter.ms only.
How to set that parameter in code.
Help will be really appreciable!
I had the same error with fastlane.
the problem was with an edit being reviewed that was not submitted.
In the play store dev console --> release overview --> change under review. there was an action to validate. it was the data security questionnaire.
once the form was submitted, I had no more problems with fastlane.
Had this same issue from AppCenter. There are some sites suggesting this is a setting in the API that is posting the app but AppCenter does not offer the setting.
The solution for me was to use 'Archive for Publishing' in Visual Studio for mac. If I then chose to 'sign and distribute' direct to Google play I would get the same issue as above.
By choosing 'Ad Hoc' distribution, then saving locally I would get a signed .aab file. This file can be manually uploaded to Google when editing a release.
I created a new track, manually uploaded, promoted it to testing then production without any issue.

Location permission declaration needs to be updated even after removed permission - App Content - Reject Google Play Console

I am facing one problem regarding Android app new version publishing.
Scenario :
I uploaded initial flutter android app 2 month ago (Dec 2020) to google play store where we had accidentally added Location permission even with no use in code. (Just permission added in Android Manifest).
Now we come up with new version of flutter android app and trying to create new Release version 1.0.2 it shows error while Submitting new release version of app.
Error : Fix errors to rollout this release
Issue is regarding used location permission in my initial app version which is live on play store
Issue need to be fixed : Your background location permission
declaration needs to be updated.
In the App Content it showing error in Sensitive app permissions
Note : In Sensitive app permission - Location Permission. It's not showing Manage Button instead there is a option to location permission declaration form.
We don't want to use location permission now . so we removed location
permissions and trying to upload new release version but still this
location permission (Sensitive App permission) declaration showing
error again and again.
Solution :
First of all fill-out form of declaration for location permission (Any Sensitive permission used in previous rolled out APK version). This will fixed temporary error of App Content - Sensitive Permission Issue.
In my scenario i have added no usage of background location In
declaration and random youtube video link.
After permission declaration you can create/edit new release.
Make sure before adding new release APK to console please analyse APK and make sure that that sensitive permission is not used again. (If you used that sensitive permission again than you need to add valid sensitive permission declaration in AppContent -> Sensitive Permission)
After Creating new release version you can roll out new release version from Release dashboard.
After Roll out go to App content -> Sensitive App Permissions -> click on Manage and Select No Radio Button and Save it.
ITS DONE. Your new release version app will be live soon!
I had the same problem - I didn't need anymore this permission but the APK in prod used this permission (and also some releases of some tests) so the console let me only explain why I needed this permission and didn't display the question if I do use this permission.
When I tried to add new tests I was always rejected because I didn't have a good reason why I needed the background access permission.
If you don't need this permission anymore:
(I don't have the exact name of the sections, actions because I have a non-english language in Google Play Console)
I found a solution that worked for me: App Update is rejected from google play due to Background Location access (But I didn't use any background location Permission).
In App content -> Sensitive App Permissions -> click on Manage -> Click on Display APKs.... You will see all the APKs that use the background permission. Those APKs can be used in Tests or Production.In order to fix the problem you will need this list to be empty.
APK from Test sections:
For each test - search the source of the release (a release from a test of internal tests/closed tests...)
Under the test section, click on Manage (even for suspended tests), click on New Release and add an empty release (without APK) click to examine the release.[Add a new empty release under the test/s that uses a release with an APK that requires the background access permission. Don't add new empty tests].
APK from Production:
You will have to add a new release on Production that doesn't include the background permission.
Now you will see that no APK is displayed when clicking on Display APks... on Sensitive permission... Now when clicking on Manage (under Sensitive permission..) you will have a new question - if you do use the background access. Click on "No" and now you can add new Tests.
I had a similar problem when modifying an application in production that did not use the sensitive permission, but had it declared
The reason that the Play Store Console showed the application stuck in "under review" status was that it could not modify the permission statement, caused by having limited the scope of the app to a single country, limit that was different from the version that was in production
After being able to adjust the regional distribution to all countries, I was able to start the release of a new version that did not use sensitive permissions, with which the permission declaration form could now show me the correct question that had nothing to do with location in background ("Does your app access location in the background in APKs or app bundles targeting Android 9 or older?") according to the documentation in:
https://support.google.com/googleplay/android-developer/answer/9799150?hl=en#zippy=%2Chow-do-i-remove-location-in-the-background
The issue is that an outdated APK/App bundle file was added to the Alpha/Beta testing phase (but never moved to production), and rather than correcting it, he added a new APK/App bundle to the live environment. The Alpha/Beta file is currently being reviewed rather than the new production file due to changes in how reviews are carried out by Google. In Google's denial, you can see the versionCode of the previous APK/App bundle.
The new APK/App bundle file should therefore be added to the same Alpha/Beta as the old one before being promoted to production. Once you have done that, go back to APP CONTENT and you will see there yes/no form. Issue is resolved.

Internal app sharing show downloading error | Error retrieving information from server. DF-DFERH-01

I published my app in internal app sharing. After I shared link to download to myself, but to another account. I turn on internal app sharing in Google Play on my phone. When I click downloading, I catch error -> Error retrieving information from server. DF-DFERH-01
I tried to test in two phones, but with same google account.
There is a step I missed - testers have to opt in to the test program before they can use the shared link, and until they do they get the opaque DF-DFERH-01 error. On the Play Console under Release Management, select App releases. In Internal test track, click Manage. Under Manage Testers click the drop arrow. This opens up a panel, and near the bottom is an opt-in URL. Copy this and send it to testers. They have to click on this link and agree to opt in to the test program. They can then download the current version. After this they can also use internal app sharing links for new builds.
In my case, I was trying to access the internally shared debug app not a production testing app. For this, I was using Internal App Sharing feature. To be able to install and use such apps one's email needs to be added to an email-list(as per the settings we had) otherwise, anyone with the link can install.
Problem
The problem is despite having my email in the list, and email representing a google account I was not able to install it. I faced this error.
Click here to see the Screenshot
Cause
I maintain about 8 google accounts on my mobile and I was logged in to all of them. I realized having multiple accounts is causing the issue.
Solution
Instead of logging out from all the google accounts, I simply created a new user in my mobile and set it up. Then I opted-in to Internal App Sharing in the App store. Then shared the app link via google-keep. Voila, I was able to install it.
In my case I just had to wait ~48 hours and it Just Worked with no other changes.
A few more silly things to consider if you are new to Google Play Console.
You need to make sure to enable Internal App Sharing on Google Play Settings, here is a tutorial for that.
Do not forget to publish your modifications by clicking on publication overview (sorry for the Portuguese language on the pic, but you can find through the icon):
And then publishing it by clicking on the blue button (publish modifications or something like that):
After doing this, try to clean the cache of your play store and remove all updates from play store (after doing this you'll need to enable Internal App Sharing again).
I was able to get rid of the error by clearing the storage of the google play store app then open the play store app again and enabling the internal app feature then opening the internal app sharing link again.
sometimes if that didn't work , restarting the device does the trick!

Categories

Resources