一个简单的问题,但我意识到我不确定这个问题的答案......
如果我正在创建一个带有库包的 android 应用程序
com.example.one
然后我创建另一个应用程序并包含另一个名称为的包
com.example.one
它有一个稍微重构的类,这会导致任何一个应用程序出现问题吗?
我问的原因是最近我遇到了一些谷歌源代码的问题,这是因为设备制造商在我的 apk 中使用的自定义操作系统中包含了相同的库,但事实并非如此快乐的! (或者有人告诉我)
如果有人可以在这里填写,因为我显然不明白这里的一些基本知识:)
谢谢
编辑: 关于 Android 和 Java 包名称差异的一个很好的链接 http://blog.javia.org/android-package-name/
最佳答案
类加载器不能加载同一个类的两个版本。它只选择一个。但是选择哪一个是不确定的。所以是的 - 它会带来麻烦。
某些平台 (java-ee) 可以选择为这些情况指定 jar 优先级。我不知道安卓。
更新:如果我最初的理解不正确,即您在类路径上没有两次使用相同的 jar(库),而是启动 2 个具有不同版本的 jar 的独立应用程序 - 那么它们不会干扰彼此(因此没有问题)
关于Java 包名称和冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4335792/