Design and Implementation of the Cloud Account PASSPORT SDK
This article details the background, goals, architecture, implementation, and future plans of the PASSPORT SDK developed to unify account systems across 58 Group apps, emphasizing a layered backend design, simple interfaces, black‑box service flows, and extensible features for mobile developers.
The article introduces the development of the cloud account PASSPORT SDK, aiming to unify various account systems across 58 Group applications, improve account security, and enhance user experience.
Background With the rapid growth of the 58 Group, many apps adopted different account mechanisms, causing inconsistencies in PASSPORT functionality; a unified SDK was needed to standardize interfaces and processes.
Goal The SDK should adapt to diverse account systems while offering simple, concise interfaces, easy integration, and seamless iteration. Design principles include interface minimalism, black‑box service processes, and invisible upgrades.
Core Requirements Provide universal login services and interfaces that return results to callers, achieved through a layered framework supporting UI, interface, business, network, and data layers.
Architecture Design The architecture separates concerns into UI, interface, business, network, and data layers, enabling high cohesion, low coupling, and independent module replacement. Service flows are treated as black boxes, with user interactions limited to final results.
Implementation Details Interfaces are simplified and centralized via a service‑type routing table, reducing SDK integration cost. The article presents service‑type code examples, routing diagrams, and node flow charts. Optional features allow selective activation of UI components, and UI‑less services enable custom UI implementation. Robustness is ensured through early parameter validation, and differences between debug and production environments are handled via macro‑controlled paths.
Shortcomings and Planning Different business units require varied SDK functionalities; future work includes finer‑grained code and resource modularization to reduce package size and improve configurability.
Summary and Outlook The SDK’s design and development is a long‑term, iterative process that emphasizes clear design, risk mitigation, and code quality, aiming for continuous improvement and perfection.
Authors Zhang Dali (iOS senior engineer), Bai Baoming (iOS senior engineer), and Deng Tuotuo (Android senior engineer) contributed to the SDK development.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
58 Tech
Official tech channel of 58, a platform for tech innovation, sharing, and communication.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
