【问题标题】:Porting blackberry application code in to Android platform将黑莓应用程序代码移植到 Android 平台
【发布时间】:2011-02-22 07:34:49
【问题描述】:

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

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

任何交叉编译器/交叉框架都可用于让我的 Blackberry 在 Android 平台上运行。认为这会让我的工作变得轻松 ;)

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

【问题讨论】:

    标签: java android blackberry cross-platform multiplatform


    【解决方案1】:

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

    application fundamentals开头。

    【讨论】:

    • 感谢您的回复...实际上它是一个仅包含 CLASS 文件的后端库,并且没有这样的 UI 元素。这就是为什么考虑移植到 Android 平台的原因。
    • 那么你只需将你的类文件制作成一个jar文件并将它添加到android项目中。
    • 再次感谢...正如这里提到的,它使用 RIM API。因此它不会在 Android 平台上编译。对吗?
    • 显然。如果它依赖于某些 API,您需要将此 API 移植到 android。
    • 是的。 RIM API 不对开发人员开放。
    【解决方案2】:

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

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

    我希望这是可以理解的,有点难以用几句话来形容...... 我已经为 Android/Java 小程序启动了一个跨平台项目,这就是我所做的。有用。 ;-)

    【讨论】:

      【解决方案3】:

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

      【讨论】:

      • 是的。我已经开始寻找相应的 Android API。谢谢
      【解决方案4】:

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

      【讨论】:

        猜你喜欢
        • 2012-01-16
        • 2010-12-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-08
        • 1970-01-01
        • 2012-03-01
        相关资源
        最近更新 更多