我们有一个多租户网络应用程序,我们正在扩展到移动领域。我们已经构建了我们应用的原生移动版本,我们希望将其部署为每个客户/租户的应用程序"这样我们的每个客户都可以在应用商店中拥有自己的应用。每个部署都将进行简单的自定义,但代码库将是相同的。
如何使用Visual Studio实现这一目标?这种方法有参考资料吗?这种方法是否有一个共同的定义(例如,多帐户 - 单代码库 - 移动)。 :)
我们正在使用Xamarin进行跨平台支持(只是一个fyi)。
答案 0 :(得分:0)
这可以通过将所有共享代码放在Android Library Project
中,然后为引用库项目的每个应用程序包创建Android Application Project
来实现。
转到Xamarin Studio并创建一个新项目。在 Android 下,有一个名为 Android Library Project 的项目类型;此项目可以包含将链接到最终应用程序的所有共享共享代码和资源。
对于此示例,我正在调用我的共享项目SharedCode.Core
。
创建此项目后,创建另一个项目,这次使用 Android应用程序项目类型:
Android应用程序项目(SharedCode.ClientOne)可以使用Xamarin中的常规引用系统引用此共享项目。双击references文件夹打开对话框,您将看到SharedCode.Core
可用作参考。勾选复选框以将其包含在SharedCode.ClientOne
。
从这里,您可以访问SharedCode.Core
项目结构中的任何内容,就像它位于SharedCode.ClientOne
中一样,但AndroidManifest.xml文件是基于Android应用程序项目(SharedCode.ClientOne)生成的。这意味着不同的Android应用程序,使用相同的代码库具有不同的包名称!
就个人而言,我在Android应用程序项目中只有一个活动作为库项目的入口点(例如启动画面)。
祝你好运!