Process: com.qiniu.pili.droid.streaming.demo, PID: 9536
java.lang.SecurityException: Media projections require a foreground service of type ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION
at android.os.Parcel.createException(Parcel.java:2071)
at android.os.Parcel.readException(Parcel.java:2039)
at android.os.Parcel.readException(Parcel.java:1987)
at android.media.projection.IMediaProjection$Stub$Proxy.start(IMediaProjection.java:231)
at android.media.projection.MediaProjection.(MediaProjection.java:75)
at android.media.projection.MediaProjectionManager.getMediaProjection(MediaProjectionManager.java:104)
at a.a.a.a.a.l.a.a(ScreenCapturer.java:54)
at com.qiniu.pili.droid.streaming.ScreenStreamingManager.a(ScreenStreamingManager.java:4)
at com.qiniu.pili.droid.streaming.ScreenStreamingManager.startStreaming(ScreenStreamingManager.java:14)
at com.qiniu.pili.droid.streaming.demo.activity.ScreenStreamingActivity.startStreaming(ScreenStreamingActivity.java:144)
at com.qiniu.pili.droid.streaming.demo.activity.StreamingBaseActivity$7.run(StreamingBaseActivity.java:277)
at java.lang.Thread.run(Thread.java:929)
Caused by: android.os.RemoteException: Remote stack trace:
at com.android.server.media.projection.MediaProjectionManagerService$MediaProjection.start(MediaProjectionManagerService.java:498)
at android.media.projection.IMediaProjection$Stub.onTransact(IMediaProjection.java:135)
at android.os.Binder.execTransactInternal(Binder.java:1028)
at android.os.Binder.execTransact(Binder.java:1001)
改targetSdkVersion 29后运行demo会闪退,请问该如何解决,报错如下:
Process: com.qiniu.pili.droid.streaming.demo, PID: 9536 java.lang.SecurityException: Media projections require a foreground service of type ServiceInfo.FOREGROUND_SERVICE_TYPE_MEDIA_PROJECTION at android.os.Parcel.createException(Parcel.java:2071) at android.os.Parcel.readException(Parcel.java:2039) at android.os.Parcel.readException(Parcel.java:1987) at android.media.projection.IMediaProjection$Stub$Proxy.start(IMediaProjection.java:231) at android.media.projection.MediaProjection.(MediaProjection.java:75)
at android.media.projection.MediaProjectionManager.getMediaProjection(MediaProjectionManager.java:104)
at a.a.a.a.a.l.a.a(ScreenCapturer.java:54)
at com.qiniu.pili.droid.streaming.ScreenStreamingManager.a(ScreenStreamingManager.java:4)
at com.qiniu.pili.droid.streaming.ScreenStreamingManager.startStreaming(ScreenStreamingManager.java:14)
at com.qiniu.pili.droid.streaming.demo.activity.ScreenStreamingActivity.startStreaming(ScreenStreamingActivity.java:144)
at com.qiniu.pili.droid.streaming.demo.activity.StreamingBaseActivity$7.run(StreamingBaseActivity.java:277)
at java.lang.Thread.run(Thread.java:929)
Caused by: android.os.RemoteException: Remote stack trace:
at com.android.server.media.projection.MediaProjectionManagerService$MediaProjection.start(MediaProjectionManagerService.java:498)
at android.media.projection.IMediaProjection$Stub.onTransact(IMediaProjection.java:135)
at android.os.Binder.execTransactInternal(Binder.java:1028)
at android.os.Binder.execTransact(Binder.java:1001)