因此,当您创建移动应用程序时,通常打算将应用程序分发到多个平台和体系结构。但是,由于目标代码通常依赖于体系结构等因素,因此您必须为所有不同的移动电话编译应用程序。那么你的应用程序是否真的针对应用程序可用的所有不同手机编译?当用户在他/她的设备上运行应用程序时,是否会进行特定目标编译?就像设备本身一样,还是在应用程序实际安装到手机上之前完成的编译?
答案 0 :(得分:0)
所以你的应用程序真正为所有不同的手机编译 该应用程序将可用于哪些?
简答:是的。
这是专门针对目标的编译,然后每当用户完成 在他/她的设备上运行应用程序?
没有;这是在创建包时完成的(否则你将在应用程序中发送所有源代码!)这意味着包可能包含在多个体系结构上运行所需的多个库。
就像设备本身一样,还是在应用实际安装到手机上之前完成的编译?
要将共享对象放入包中,请在创建包之前完成编译。在安装软件包期间,所需的共享对象被复制到手机上(我怀疑不需要的那些被丢弃,但它们可能不会!)。
然而,Android支持的架构数量相对较少;虽然支持它们都会增加包装的尺寸,但尺寸很少成为问题。
<强>替代:强>
如果您不想将共享对象放在包中,另一种方法是托管它们并在运行时下载相应的对象。
问题在于这确实会影响用户体验(我个人讨厌下载应用程序时,然后它声明它想要下载更多;感觉这是一种绕过谷歌想做的任何安全检查的机制)