9cbcbf6e26
Activity.enterPictureInPictureMode can fail for a couple of reasons mentioned in the JSDoc: "The system may disallow entering picture-in-picture in various cases, including when the activity is not visible, if the screen is locked or if the user has an activity pinned." It seems to be safe to assume that those cases will be caught by a RuntimeException handler (only RuntimeExceptions can be left without explicit catch block). Anyway the root cause for problems is the fact that the current process for going to the picture in picture mode is not synchronised with Activity's lifecycle. On Activity's "userLeaveHint" callback we dispatch async task to the JS code which only then after dispatching some more stuff eventually call native method that enter PiP. In case we spend too much time on the JS side and the Activity goes to PAUSED state the call will fail with IllegalStatException: "activity is not visible", "activity is paused" etc. This means with this fix the app will not crash, but we'll see it sometimes not go to the PiP mode as expected. |
||
---|---|---|
.. | ||
components | ||
actionTypes.js | ||
actions.js | ||
index.js | ||
middleware.js | ||
reducer.js |