Jishin Dev [JD]
07/15/2023, 5:28 AMWASM
binaries can be downloaded dynamically in runtime, loaded onto android/iOS/web
platforms to be able to do OTA updates to our SDKs.
• Has anyone explored this already?
• Any pointers/tips to know if its actually worth a shot?
• Is this even a good idea? 😅
• Does GooglePlay/AppStore flag such SDKs (that use dynamically downloaded code)?
Idea is to stop having the client to upgrade the SDK and make releases every now and then for minor changes, bug fixes or feature upgrades..jessel
07/15/2023, 8:36 AMJishin Dev [JD]
07/16/2023, 4:51 AMCLOVIS
07/19/2023, 9:45 AMJishin Dev [JD]
07/19/2023, 9:52 AMCLOVIS
07/19/2023, 9:53 AMCLOVIS
07/19/2023, 9:54 AMJishin Dev [JD]
07/19/2023, 9:55 AMCLOVIS
07/19/2023, 9:56 AMCLOVIS
07/19/2023, 9:57 AMCLOVIS
07/19/2023, 9:57 AMJishin Dev [JD]
07/19/2023, 10:00 AMIf a bug existed when I released a version, I want the bug to still exist two years later when I checkout that version.
Yes this is exactly what we're trying to solve for. This is not something we want. 😄
CLOVIS
07/19/2023, 10:00 AMJishin Dev [JD]
07/19/2023, 10:00 AMCLOVIS
07/19/2023, 10:01 AMIf a bug existed when I released a version, I want the bug to still exist two years later when I checkout that version.This is, by definition, incompatible with OTA updates.
Jishin Dev [JD]
07/19/2023, 10:01 AMThen you don't need anything complicated. You can just publish new versions to Central or anything else. Like everyone else does.
The clients will still need to update once we push to central. Which is another hurdle to jump. Which will be avoided with this.
Jishin Dev [JD]
07/19/2023, 10:03 AMCLOVIS
07/19/2023, 10:04 AMCLOVIS
07/19/2023, 10:04 AMJishin Dev [JD]
07/19/2023, 10:05 AMCLOVIS
07/19/2023, 10:08 AMCLOVIS
07/19/2023, 10:09 AMCLOVIS
07/19/2023, 10:09 AMJishin Dev [JD]
07/19/2023, 10:20 AMFixing a bug in your data collection is visible.
I would hope it is visible. That is the point. 😄
Changing the way you do requests has performance impacts that are user-visible.
If changes have gone through QA and proper testing, the impact to ux(if any) would be insignificant compared to the other intense operations that happen within the SDK in parallel. At least this is not the concern we have for this use case but you're right, maybe something that can be considered for other projects where it's a priority.
What happens when your servers are down? All apps of all users of the SDK breaks?
Well that would be bad. So, we workaround by shipping a version with the SDK package. This also takes care of the initial load scenario where the client app doesn't have to wait for anything to be downloaded. May be wrong but I think zipline already takes care of this.