-
Notifications
You must be signed in to change notification settings - Fork 499
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fixing #699 java.lang.SecurityException #700
Conversation
Update MavericksMockPrinter.kt
@@ -204,6 +205,11 @@ internal abstract class MavericksPrintStateBroadcastReceiver : BroadcastReceiver | |||
fun register(context: Context) { | |||
check(!isRegistered) { "Already registered" } | |||
isRegistered = true | |||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { | |||
context.registerReceiver(networkInfoReceiver, filter, Context.RECEIVER_NOT_EXPORTED) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@danpe thanks for fixing, but this doesn't seem to compile
MavericksMockPrinter.kt:209:38 Unresolved reference: networkInfoReceiver
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you need to do what context.registerReceiver(this, IntentFilter(ACTION_COPY_MAVERICKS_STATE))
does below? and that line should be replaced with this new code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @elihart my bad, fixed it.
Samsung just released Android 14 to all its flagship devices, so I believe we'll be seeing more and more crashes due to this...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to know, but since this is the mocking library it shouldn't be running in production. Do you need to change your configuration?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is weird as even if I disable mocking completely it still crashes,
MockableMavericks.initialize(
mocksEnabled =false
debugMode = false,
applicationContext = this,
//TODO maybe use other dispatchers
viewModelCoroutineContext = Dispatchers.Default,
stateStoreCoroutineContext = Dispatchers.Default
)
Still crashes on startup...
By adding Context.RECEIVER_NOT_EXPORTED
Thank you! Can you also make a release please? 🙏
…On Fri, Nov 3, 2023, 21:54 Eli Hart ***@***.***> wrote:
Merged #700 <#700> into main.
—
Reply to this email directly, view it on GitHub
<#700 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAQKRIYEHYN33KTODKVGQ5DYCVDXZAVCNFSM6AAAAAA6YI3AFKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJQHA3DAMBUGEZTGMI>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
I can make a release next week. I'm still curious though, if you are seeing these crashes in production, if you should instead be changing your config to not run the mock printer code in prod builds |
It is weird as even if I disable mocking completely it still crashes,
Still crashes on startup... |
That doesn't control the mock printer configuration. You must be calling |
Tbh, we don't call |
It seems like you'll want to figure out the root cause of why the mock printer is registering in your production app. Even if you apply this fix you still don't want the broadcast receiver starting in your prod app. Look at how you might be using |
Hi @elihart , thank you for responding. Nothing found. |
Hi @elihart, thanks for the fix. Currently running into this issue when attempting to target API 34 as well. Curious when a new release would be possible. Thanks! |
I'll get a release out this week |
Thanks for this fix. It helped us when we upgraded our target SDK version to 34 |
Fixes #699