对Android SDK的多租户支持
Photo by Amélie Mourichon on Unsplash
We recently added multi-tenancy support in our Mobile Software Development Kits (SDKs) and learned a lot during that process. I want to share my experience with the technology community as a quick start guide for developers who are interested in making their SDKs multi-tenant friendly.
我们最近在我们的移动软件开发工具包(SDK)中增加了多租户支持,在这个过程中我们学到了很多。我想与技术社区分享我的经验,作为那些有兴趣使他们的SDK对多租户友好的开发者的快速入门指南。
This article focuses on Android and is based on the architecture, design, and patterns we used in Android Assistant SDK for adding multi-tenancy support.
这篇文章主要针对安卓系统,并基于我们在安卓助手SDK中使用的架构、设计和模式来增加多租户支持。
What is Assistant SDK?
什么是Assistant SDK?
Assistant SDK offers a seamless messaging experience within an app to help app users with their queries. The user starts off by chatting with a bot. If the bot cannot handle the user’s request, the chat will be transferred to a human agent based on agent availability.
助理SDK在应用程序中提供了无缝的信息传递体验,以帮助应用程序用户解决他们的疑问。用户一开始就与一个机器人聊天。如果机器人不能处理用户的请求,聊天将根据代理的可用性转给人类代理。
Our SDK was already integrated in the PayPal consumer app, so when a new requirement was requested for the Venmo app, we saw this as the right time to add multi-tenancy support.
我们的SDK已经集成在PayPal消费者应用中,所以当Venmo应用有新的要求时,我们认为这是增加多租户支持的正确时机。
Why did we need multi-tenancy support?
为什么我们需要多租户支持?
Assistant SDK offers a personalized user experience based on the signed-in user. This involves Identity Management, which varies across different tenants.
助理SDK根据签到的用户提供个性化的用户体验。这涉及到身份管理,这在不同的租户中是不同的。
In addition, our SDK has UI components which should maintain a look and feel similar to its tenant. We also wanted to offer tenants an option to pick from different agent platforms.
此外,我们的SDK有UI组件,应该保持与它的租户相似的外观和感觉。我们还想为租户提供一个选择,从不同的代理平台中挑选。
The following screenshot shows how our chat sheet is rendered in Venmo and PayPal.
下面的截图显示了我们的聊天表是如何在Venmo和PayPal中呈现的。
Here, the differences are subtle since both have a blue theme. But we can clearly notice differences in the avatar, gripper, minimize button, title, a...