Blackberry 10 现在接受 android 但不接受 google map。
基本上我们想将我们的应用程序移植到 android 并为谷歌地图使用不同的技术,但我们不想分叉该项目。所以我们希望原始项目其他区域的所有更新都延续到 bb 项目之类的东西(它应该仍然是同一个项目)
所以我想进行一些预处理,上面写着:(如果是黑莓,请执行此操作)。之类的事情。
有没有办法这样做?
基本上最糟糕的是,我们只是去掉了 bb 版本的地图功能。
Blackberry 10 现在接受 android 但不接受 google map。
基本上我们想将我们的应用程序移植到 android 并为谷歌地图使用不同的技术,但我们不想分叉该项目。所以我们希望原始项目其他区域的所有更新都延续到 bb 项目之类的东西(它应该仍然是同一个项目)
所以我想进行一些预处理,上面写着:(如果是黑莓,请执行此操作)。之类的事情。
有没有办法这样做?
基本上最糟糕的是,我们只是去掉了 bb 版本的地图功能。
boolean
您可以在常量类中创建一个值:
public class Constants{
public static boolean isForBlackberry = true;
}
然后你可以用它来操作。因此,如果你想对地图做一些事情,你可以像这样检查它:
if(!Constants.isForBlackberry){
// open up a map
}
else{
// don't open up a map, do something else instead
}
现在每次导出 apk(Android) 时都将boolean
值设置为false
,但如果导出 bar(Blackberry) 文件,则将其设置为true
.
首先,我想说有一个 jar 文件可以同时支持 android 和 blackberry。例如,如果您从 android 和 blackberry 应用程序中访问 Web 服务,则可以将 http 请求 + xml 解析器隔离到单独的 jar 文件中。它是可能的,我已经成功地做到了。
android 和 blackberry(java 部分)之间存在细微差别。Blackberry 有时比 android 落后 1 个版本,因此您需要添加一些注释来支持您在 blackberry 上的代码。您确实需要将 java 类从您的 android 中分离到一个单独的项目中。我还隐约记得您需要删除未使用的导入。
尽一切可能,继续。您将节省大量时间,并为您的开发人员工作。
不要做“如果黑莓”这样做。你会在代码上弄得一团糟。而且,如果您想“不”支持黑莓,哦,伙计,您将面临一项任务。你也可能不想仅仅因为你不能让该死的东西在黑莓上工作而束缚你的 android 版本。在外面的 lib jar 中将项目与常见的东西分开。这就是走的路,伙计。