kiwix/kiwix-android

Last "Publish App to PlayStore" task failed to upload the application on PlayStore.

MohitMaliFtechiz opened this issue ยท 11 comments

Describe the bug
The last "Publish App to PlayStore" task failed to upload the application on PlayStore. https://github.com/kiwix/kiwix-android/actions/runs/11215178124/job/31171826224

Expected behavior
It should upload the application to the Play Store.

@kelson42 We are using two foreground services in our project, and we need to inform the Google Play Console about them as outlined in the official documentation: https://support.google.com/googleplay/android-developer/answer/13392821?hl=en. However, there is a catch: the option to provide this information to Google is not directly available in the Play Console. We have to manually upload the app bundle to the Play Store, after which this option will appear during the upload process. I have researched this and found no direct option to fill out the form beforehand. I came across this official response: https://support.google.com/googleplay/android-developer/thread/287886182/google-api-error-foreground-service-permissions-required-please-assist?hl=en.

So here we need to provide the:

  1. A short description of each foreground service.
  2. A video demonstrating the feature.

All these steps are detailed here: https://support.google.com/googleplay/android-developer/answer/13392821?hl=en#.

Before we proceed, we need to refactor our code for custom apps. Since ReadAloudService is used in both the main app and custom apps, but the HotspotService is currently only used in the main app, we enabled it for custom apps in #3487. However, due to the use of file descriptors (fd) in custom apps, we hid this feature from custom apps in #3516.

We need to remove this Service from custom apps because we are required to provide explanations and videos for all custom apps as well. Since this feature is currently inactive for custom apps, it could lead to their rejection. We will re-enable this feature for custom apps when we are able to open the server using file descriptors.

@MohitMaliFtechiz We should have an issue requesting he introduction of the hotspot formcustom apps because we don't have one and this is unclear what is missing to get it back.

For the rest please go ahead with the small revamping.

@MohitMaliFtechiz We should have an issue requesting the introduction of the hotspot for custom apps because we don't have one and this is unclear what is missing to get it back.

@kelson42 For the hotspot feature of custom apps I have created a separate ticket with all details #4028.

Video samples for our foreground services which we have to provide on the playStore.

Hotspot Kiwix foreground service:
HotspotForegroundServiceKiwixApp.mp4

Hotspot foreground service:
We are using the dataSync(android.permission.FOREGROUND_SERVICE_DATA_SYNC) type for this service because it hosts our ZIM files on the server, and without having the foreground service(if we use normal service) and the app closes then it will close our server.

We do not need to give explanation about the readAloud service since we are now starting using the normal service instead of foreground service for readAloud service in #4027
Read aloud foreground service
We are using the mediaPlayback(android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK) for this service as this service performs the reading action.

This is the app bundle for uploading on the playStore https://github.com/kiwix/kiwix-android/actions/runs/11325179269 https://github.com/kiwix/kiwix-android/actions/runs/11454003112 https://github.com/kiwix/kiwix-android/actions/runs/11598923047.

@kelson42 We are ready to fix the playStore publishing, we have made all the changes in our code and we have the video and explanation about the hotspot foreground service. We should start the explanation process.

@MohitMaliFtechiz Not sure what is left to do, but lease go ahead.

What is the situation for all custom apps? What should be done there?

@MohitMaliFtechiz Not sure what is left to do, but lease go ahead.

@kelson42 We are ready to upload the Kiwix app to the PlayStore to fix this issue. We have refactored our code in #4027, and we have the video sample of our foreground service and explanation in this ticket which we have to give to playStore.

What is the situation for all custom apps? What should be done there?

@kelson42 For custom apps, we can directly upload them to PlayStore with Android 14 since there are no foreground services in the custom apps. Therefore, we do not need to give any explanation to Play Store for custom apps(we have made the read aloud service a normal service).

@MohitMaliFtechiz Have you make the request? How long is expected to again be able to upload to the PS?

@kelson42 Yes, I have requested to the playStore. It is in review, it can take 1 day to review.

Image

Lets hope we can upload tomorrow and close the issue.

@kelson42 PlayStore approved our request, and the last app bundle has been successfully uploaded to PlayStore via our CI https://github.com/kiwix/kiwix-android/actions/runs/11606984848/job/32319808646. So I am closing this issue.

Image

Image