ondato / ondato-sdk-android

4 stars 3 forks source link

FOREGROUND_SERVICE_MEDIA_PROJECTION causing playstore to reject updates #14

Closed HansCraftsman closed 1 week ago

HansCraftsman commented 4 months ago

Version of the ondato-sdk-android 2.5.4

Platforms - Android

Steps to reproduce Build appbundle Upload to Google Play Gets rejected

Expected results We only use the document verification service. How do I disable FOREGROUND_SERVICE_MEDIA_PROJECTION from the manifest? Actual results FOREGROUND_SERVICE_MEDIA_PROJECTION causing playstore to reject updates.

After updating the SDK for Flutter to version 0.5.0 (internal package ondato-sdk-android 2.5.4), Android apps are rejected by Google Play and require you to explain the use of android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION and send a video using this service.

Is it possible to put the use of a function using android.permission.FOREGROUND_SERVICE_MEDIA_PROJECTION in a separate module so that it can be excluded using a similar construction:

// build.gradle (project-level)

//...

configurations.configureEach {
 exclude group: "com.kyc.ondato.ondato_flutter", module: "module_using_foreground_service_permission"
}
Svaike commented 4 months ago

Hi, added demo file to integration documentation that you can download and share with play store: https://ondato.atlassian.net/wiki/spaces/PUB/pages/2334359560/Customer+onboarding+KYC+mobile+SDK+integration#Google-Play-Store-rejection

let me know if it resolves your issue with them

Svaike commented 4 months ago

The mentioned service's purpose is to record the identity verification process for the cases where local authorities require it. If it's running for the specific application it is controlled via API configuration.

If you send me the info (svajunas.gaina@ondato.com) about the client that uses SDK, then I will check if this functionality is enabled for your use case.

HansCraftsman commented 4 months ago

Thanks, let's try it. Is it normal that the video uses ios graphics, not android?

Svaike commented 4 months ago

We'll prepare the demo flow with Android graphics if it does not go through. There was another similar case with Play Store and it was sufficient to provide this demo.

HansCraftsman commented 4 months ago

hi, Google is rejecting the release, it doesn't have enough arguments from the video. They want exactly how the FOREGROUND_SERVICE_MEDIA_PROJECTION service is used. Here is their answer:

Issue found: Play Console declaration and/or app description in Google Play Store does not sufficiently demonstrate the use of permission.

We are unable to approve your app’s use of FOREGROUND_SERVICE permission because we found the following information provided to be insufficient in evaluating compliance with foreground service permission requirements:

The video link you provided in the Play Console declaration and/or The app description in the Google Play store.

Issue details

We found an issue in the following area(s):

Version code 604 Version code 2067708

To bring your app into compliance, follow these steps:

The Foreground Service permission ensures the appropriate use of user-facing foreground services. For apps targeting Android 14 and above, you must specify a valid foreground service type for each foreground service used in your app, and declare the foreground service permission that is appropriate for that type. For example, if your app’s use case requires map geolocation, you must declare the FOREGROUND_SERVICE_LOCATION permission in your app’s manifest.

With the exceptions of systemExempted and shortService foreground service types, apps are only allowed to declare a foreground service permission if the use:

The use of foreground service is further explained on this Play Console Help Center page.

Is it possible to make a more detailed video using the FOREGROUND_SERVICE_MEDIA_PROJECTION service?

andriusalekna commented 2 months ago

@HansCraftsman @Svaike did you manage to resolve this issue?

MaximSamolovov commented 2 months ago

@Svaike @HansCraftsman удалось ли вам решить эту проблему?

Partly. Some of our clients were really helped by the video and description of the process from @Svaike response. But others still get repeated rejections because of FOREGROUND_SERVICE. Moreover, some clients receive repeated rejections after they have successfully passed the review. Literally tonight, 3 clients received a new build update, although they definitely resolved the issue with Google support. I think the problem is relevant and requires a correct solution.