首先,您必须意识到,Android平台不允许应用程序级别的“共享库”。在“传统”的编程语言平台(C、C ++、Java等),我们有这种共享运行时库的机制。(例如,在Windows上的DLL,在Unix上的DSO,在JVM上的Jar等)。但是在Android上,除非您是Google或手机制造商,否则您不能这样做(请参见下面的脚注1)。作为应用程序开发人员,这可能是一个根本性限制。软件工程实践中的“共享”或“重用”代码,无论是在构建时还是在运行时,都是非常重要的部分。由于上述限制,这在Android上相当困难(不是不可能,只是更困难)。
然而,我对这个概念有一些疑问。我的意思是说,什么时候开发人员应该包含aar依赖项在其应用程序中?这些依赖关系是否与某些SDK最小版本相关?
例如,在一个项目中,我访问COM端口,我使用NDK预编译的.so库。如果我想共享此实用程序,我是否必须创建aar?