Open shaji-Dev opened 1 year ago
Agent comment from yating.liao in Zendesk ticket #94778:
The issue you are experiencing seems to be a new requirement introduced by Android 14 regarding broadcast reception. However, please note that the current version, 4.17, is only compatible with Android 13.
To learn more about the new features introduced in Android 14, you can visit the following link: https://developer.android.com/about/versions/14/behavior-changes-14#runtime-receivers-exported
°°°
I know that, but is there any plans to update this version to be compatible with Android 14? It seems to be a simple fix, I think you only have one line of context.registerReceiver()
in your SDK which is when registerApp is called, you just need to add the Context.RECEIVER_EXPORTED
or Context.RECEIVER_NOT_EXPORTED
flag.
Android 14 is starting to roll out and it doesn't make sense that most our users would have their app not supported anymore because of a simple fix.
Thank you.
Agent comment from yating.liao in Zendesk ticket #94778:
MSDK will continue to strive for compatibility with more Android devices, but the current version cannot set the targetVersion to Android 14. If it is urgent for you, can you please let us know the reason? I will provide this feedback to the team.
°°°
I think I explained the urgency, most of our users have had the Android OS update popup and some have updated to Android 14 without realizing that the app will not work if they update, and as you know the problem is they cannot rollback to version 13 in their devices. So now there's no way they can use the app on their device unless the MSDK supports Android 14 because they cannot go back to Android 13, making their devices useless at the moment.
I think the fix should be simple enough to support Android 14, it seems that the error is coming from that line of code I mentioned earlier, please inform your team to try and target Android 14 (34) as this is urgent for our business, we have client complaints because of this issue that we cannot resolve for them, maybe a MSDK quick fix release to the alpha channel for now?
Thank you.
Agent comment from yating.liao in Zendesk ticket #94778:
You can submit your requirements through this address(https://sdk-forum.dji.net/hc/en-us/requests/new). If possible, we would appreciate it if you could let us know the industry you are in and provide some background information about your company.
We will collect user requirements through this channel, and the communication here can only be viewed internally.
°°°
I submitted the request as you suggested (ID #95053).
Unfortunately I cannot provide information about the company through this channel as our products are not for commercial use.
Thank you.
Agent comment from yating.liao in Zendesk ticket #94778:
We have received your new issue and will proceed to address your concerns. However, please note that all SDK requirements need to go through a team review before we can determine the scheduling. Therefore, we are unable to decide on the SDK development plan.
°°°
+1 This bug is accounting for over 60% of our app crashes. I really hope this can be addressed soon. Thank you.
+1 The longer this bug takes to be fixed, the more clients you will be dismissing/frustrating. Please fix this as soon as possible.
这是来自QQ邮箱的自动回复邮件。 您好,您的邮件我已收到。
Any news on a fix for this?
Please, provide any kind of feedback for the sdk developers and companies depending on you. This is a major blocker since Android 14 usage is growing rapidly.
API level 34
introduces stricter requirements for broadcast receivers. The error you're encountering indicates that you need to explicitly specify whether your receiver is exported or not when you register it.
When you register a receiver, you need to indicate whether it is intended to receive broadcasts from other apps (RECEIVER_EXPORTED
) or only from your app (RECEIVER_NOT_EXPORTED
). Here's how you can modify your registerReceiver call to specify this:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.UPSIDE_DOWN_CAKE) {
registerReceiver(packageChangeBroadcastReceiver, intentFilter, RECEIVER_EXPORTED);
} else {
registerReceiver(packageChangeBroadcastReceiver, intentFilter);
}
Fyi.
The library is crashing on registerApp.
With Android 14, registerReceiver() now has a required field,
Context.RECEIVER_EXPORTED
orContext.RECEIVER_NOT_EXPORTED
.Please add this parameter to your context.registerReceiver() calls so we can use the library in Android 14. Thank you.
Usind versions:
Log: