Caused by: java.lang.SecurityException: getDataNetworkTypeForSubscriber
at android.os.Parcel.createExceptionOrNull(Parcel.java:2373)
at android.os.Parcel.createException(Parcel.java:2357)
at android.os.Parcel.readException(Parcel.java:2340)
at android.os.Parcel.readException(Parcel.java:2282)
at com.android.internal.telephony.ITelephony$Stub$Proxy.getNetworkTypeForSubscriber(ITelephony.java:8762)
at android.telephony.TelephonyManager.getNetworkType(TelephonyManager.java:3021)
at android.telephony.TelephonyManager.getNetworkType(TelephonyManager.java:2985)
at com.remotemonster.sdk.RemonContext.getNetworkTypeForInit(RemonContext.java:204)
at com.remotemonster.sdk.data.InitMessage.<init>(InitMessage.java:43)
at com.remotemonster.sdk.network.RestServiceHandler.init(RestServiceHandler.java:303)
at com.remotemonster.sdk.RemonClient.initRemon(RemonClient.java:102)
at com.remotemonster.sdk.RemonCast$Builder.build(RemonCast.java:271)
at 000.0000000000000.live.RemoteCastManager.connect(RemoteCastManager.kt:25)
at 000.0000000000000.app.ui.fragments.live.LivePlayerFragment$onAttach$4.accept(LivePlayerFragment.kt:362)
at 000.0000000000000.app.ui.fragments.live.LivePlayerFragment$onAttach$4.accept(LivePlayerFragment.kt:48)
at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
at com.uber.autodispose.HalfSerializer.onNext(HalfSerializer.java:121)
at com.uber.autodispose.AutoDisposingObserverImpl.onNext(AutoDisposingObserverImpl.java:76)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201)
at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)
at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:124)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7660)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
Android 11 / 2.8.2-beta.1 버전에서 LTE로 방송 시청시 앱이 죽습니다
uses-permission android.permission.READ_PHONE_STATE" 권한추가 가이드 요청드립니다.
추가해도 에러가 발생했었는데 해당 권한에 대한 승인 요청 받고 나니 에러가 나지 않았습니다.
추가 사항을 말씀 드립니다.
해당 권한 추가 후에 유저에게 권한 승인을 받을 경우 앱이 죽지 않습니다.
READ_PHONE_STATE 권한 승인시 유저에게 전화 권한이 필요하다고 나오는데 해당 권한을 받은뒤 하는 RemonCast의 내부 행동이 ‘방송 접속시 어떤 네트워크로 받았는지’ 에 대한 정보 수집 목적으로 보입니다.
RemonCast이 동작하기 위한 권한이 아닌 단순 정보 수집을 위한 행위를 위해 권한을 받기에 과하다고 생각합니다. 권한을 승인 받지 않고 RemonCast를 사용할 수 있는 방법은 없을까요?
CHANGE_NETWORK_STATE와 ACCESS_NETWORK_STATE 권한으로 대체도 가능합니다.
해당 권한은 기존부터 사용하고 있었고 혹시 몰라 시도 해본결과 동일한 에러가 발생합니다. 권한 승인 요청을 해도 동일합니다.