popcorn-official / popcorn-android

Popcorn Time is a multi-platform, free software BitTorrent client that includes an integrated media player ( Android / AndroidTV ) A Butter-Project Fork
https://popcorn-time.site
Other
1.21k stars 275 forks source link

Won't open without microphone permission #804

Open zakrzk opened 1 year ago

zakrzk commented 1 year ago

Operating System Version: Android TV

Popcorn Time Version: 0.3.5

Download date: 6th July 2022

Download url: https://github.com/popcorn-official/popcorn-android/releases/download/v0.3.5/tv-arm-release-0.3.5.apk

Expected Behaviour

Application opens when I click "Deny" on microphone access permission request pop-up.

Actual Behaviour

Nothing happens. The app won't start.

Steps to reproduce the behaviour

  1. Delete the app
  2. Install the app
  3. When you open it for the first time, an Android pop-up shows up: Popcorn Time requests microphone access
  4. Click deny
superbonaci commented 1 year ago

I've tried tv-arm-release-0.3.6.apk on a regular phone (Android) and does work, the app opens only if you enable permission to access the Microphone: Allow Popcorn Time to record audio?

This is the adb logcat with the Microphone permission set to "Don't allow":

 1415 12174 I ActivityTaskManager: START u0 {act=android.content.pm.action.REQUEST_PERMISSIONS pkg=com.google.android.permissioncontroller cmp=com.google.android.permissioncontroller/com.android.permissioncontroller.permission.ui.GrantPermissionsActivity (has extras)} from uid 10251
 1415  2083 D CoreBackPreview: Window{23f1385 u0 com.google.android.permissioncontroller/com.android.permissioncontroller.permission.ui.GrantPermissionsActivity}: Setting back callback OnBackInvokedCallbackInfo{mCallback=android.window.IOnBackInvokedCallback$Stub$Proxy@5a31a0b, mPriority=0}
21668 21668 V GrantPermissionsViewModel: Permission grant result requestId=7431655291803560672 callingUid=10251 callingPackage=pct.droid.tv permission=android.permission.RECORD_AUDIO isImplicit=false result=2
 1415  1658 I ActivityTaskManager: Displayed com.google.android.permissioncontroller/com.android.permissioncontroller.permission.ui.GrantPermissionsActivity: +150ms
 1415 12178 D CoreBackPreview: Window{23f1385 u0 com.google.android.permissioncontroller/com.android.permissioncontroller.permission.ui.GrantPermissionsActivity}: Setting back callback null
 1415  3903 W InputManager-JNI: Input channel object '23f1385 com.google.android.permissioncontroller/com.android.permissioncontroller.permission.ui.GrantPermissionsActivity (client)' was disposed without first being removed with the input manager!

You must close or stop the app for the permission to take effect. So for example if you have mic allowed and you don't allow it from app settings, the app will continue working and switching to foreground unless you quit it.

If you open the app with the permission disabled it will return to background (not quit).

Try re-enabling the mic permissions from command line, for me worked. No idea if you can do this on Android TV:

adb shell 'pm grant pct.droid.tv android.permission.RECORD_AUDIO'