uber / uber-ios-sdk

Uber iOS SDK (beta)
https://developer.uber.com/docs
MIT License
376 stars 125 forks source link

Move deeplink state management to dedicated manager class. #198

Closed edjiang closed 6 years ago

edjiang commented 7 years ago

In the current SDK, deeplink objects are self-aware objects that manage their own state when executed.

This change turns deeplink objects into thin wrappers around the URL object, and separates out its state management (for performing the deeplink) into a manager singleton. This allows us to treat URLs as deeplinks (which they are, just for the Safari app). In addition, we get the ability to track deeplink success without necessarily having a Deeplinking object.