3

我有一个使用 JAVA 以及 Blackberry(RIM) 特定 API 编写的 Blackberry 库。我想将相同的库移植到 Android 平台而不进行任何代码更改并使其运行。

在这里,我正在寻找实现它的最佳方法

任何交叉编译器/交叉框架都可用于使我的黑莓在 Android 平台上运行。认为这将使我的工作变得容易;)

请分享您对此的意见。提前致谢。

4

4 回答 4

2

如果移植这么容易,很多开发人员就会失业。

您不必重写整个应用程序,但肯定必须进行相当多的更改。如果你有一个干净的设计,你可能可以重用很多代码。否则会变得更复杂。对于 RIM API,最好先编写接口类(“RIMXyz 实现 IntrfXyz”),它具有您使用 RIM-API 的所有函数调用。然后,您可以使用“AndrXyz implements IntrfXyz”来编写 Android API 类。将依赖 RIM 的东西放在一个单独的外部库中,并对依赖于 android 的东西做同样的事情。然后你可以有一个 RIM-prj 和一个 Android-prj,每个都只链接到依赖类和可重用类。这样你就可以很好地构建你的移植项目。此外,应用程序的“顶端”端肯定必须改变,因为您必须使用 Android 中的“活动”类来运行任何东西。这是我看到的两个方面。

我希望这是可以理解的,用几句话说起来有点困难……我已经开始了一个 Android/Java 小程序的跨平台项目,这就是我所做的。有用。;-)

于 2011-02-22T09:28:40.250 回答
2

你不能那样做。AFAIK,Blackberry 使用 J2ME 技术(这里可能是错误的)。Android系统是完全按照其他原则构建的。您必须学习 android 才能了解如何构建 GUI、如何处理后台任务以及存储数据的位置。对不起。

从应用程序基础开始。

于 2011-02-22T08:07:39.377 回答
0

您应该在 android api 中找到类似的函数来替换 RIM API 调用并使用例如抽象工厂设计模式重构您的代码。(http://sourcemaking.com/design_patterns/abstract_factory)

于 2011-05-13T09:19:17.017 回答
0

如果不重写一些代码,你就无法做到这一点。如果您能告诉我们更多关于您正在使用的 RIM API 中的类的信息,您可能会得到一些关于要使用 Android API 中的哪些类的具体答案。

于 2011-02-22T12:57:28.253 回答