为什么Xamarin不支持在不发布到应用商店的情况下更新应用程序,这是不是有技术限制?像React Native或Cordova这样的Javascript跨平台移动开发框架可以做到这一点。
发布于 2016-11-10 06:38:11
在某种意义上,你是在将苹果与橙子进行比较。当涉及到本地开发时,Xamarin是一个允许您通过包装器进行本地开发的框架:https://developer.xamarin.com/guides/cross-platform/getting_started/introduction_to_mobile_development/#How_Does_Xamarin_Work
因此,您将执行与推送更新Native Android/iOS应用程序(分别使用Java/Obj-C编程)相同的工作流程。
而另一方面,像React/Cordova这样的框架,他们有通过从服务器端服务中拉出来inject内容的机制。这在第三方的cordova项目中解释得相当清楚,它做了这件事:
https://github.com/markmarijnissen/cordova-app-loader
但是,如果您创建了一个与服务器端服务没有连接的local Cordova应用程序,并且需要对其进行更新,那么您很可能需要遵循与打包的独立应用程序相同的步骤来上传带有新资产/代码/等的新.ipa / .apk。
发布于 2016-11-10 06:26:16
这是因为所有的代码都在js文件中,可以下载到ARM二进制文件的外部替换。Xamarin的代码是二进制的。此外,如果您的代码在App Store中,您应该通过应用商店进行更新。这不是Xamarin的一个限制(因为你也不能用原生的obj-c应用程序做到这一点),而更像是js应用程序的“亲”。
顺便说一下,如果你使用Enterprise deployment而不是App Store,你可以随时更新(因为你完全控制了部署机制)。
https://stackoverflow.com/questions/40516982
复制相似问题