Scala、Android和Eclipse

Scala、Android和Eclipse,android,eclipse,scala,Android,Eclipse,Scala,我开始学习Scala,我。。。我想我恋爱了。到目前为止,我只编写了一些小的测试片段,但由于我目前正在从事Android开发,我真正想做的是尝试用Scala编写Android应用程序 我已经找到了关于这一问题的文章和问题,但主要是指这三种工具的旧版本(Android SDK/Scala/Eclipse),所以一般的问题是: 现在是否有人使用最新的SDK、Scala 2.9和Eclipse Indigo在Scala中编写Android应用程序?它的可行性如何? 特别是: Scala的功能和Andro

我开始学习Scala,我。。。我想我恋爱了。到目前为止,我只编写了一些小的测试片段,但由于我目前正在从事Android开发,我真正想做的是尝试用Scala编写Android应用程序

我已经找到了关于这一问题的文章和问题,但主要是指这三种工具的旧版本(Android SDK/Scala/Eclipse),所以一般的问题是:

现在是否有人使用最新的SDK、Scala 2.9和Eclipse Indigo在Scala中编写Android应用程序?它的可行性如何?

特别是:

  • Scala的功能和Android库之间的交互/集成如何

  • Eclipse的Scala插件的状态如何?我已经阅读了您期望的所有特性,但我想知道第一手的故事,特别是关于调试器的故事

  • 构建过程(从scala到java再到dalvik、ant、proguard等)的自动化程度如何


  • 谢谢

    我们正在大量使用Scala来测试我们的Android代码-您可以阅读我们如何进行测试的文字。我们使用Ant或SBT进行编译——这是一个非常适合Android开发的工具

    说到这里,我不确定我是否会推荐Scala用于Android开发。特别是Scala2.9.x基本上是不可用的,因为没有好的方法让库在Android上工作。你可以阅读关于这个问题的文章


    这真是一个遗憾,因为如果我们能让Scala正常工作,Android开发将从中受益匪浅。

    这段来自ScalaDays 2011的视频可能很有价值:

    迈克尔·加尔平

    编辑:

    如果你真的想在Android上运行Scala代码(不是真的做应用,而是为你自己),那么我有一个更简单的解决方案。这取决于您的手机是否支持此过程。总之,这些步骤是:

  • 在您的设备上安装Ubuntu(如上所述)。这不会影响Android的安装

  • 启动Ubuntu,安装JDK、Scala等,复制Scala JAR并从那里运行


  • 不久前,我从Scala 2.9.0-1的书中开始实现android应用程序(一个twitter客户端)

    我认为你可以用它。在AsyncTask中,我对参数列表只有一个问题(请参见下面的问题#3)。
    如果您想签出项目,您可以找到它。

    这里找到的解决方案使用最新的Android SDK,包括Eclipse 3.7.2和Scala 2.9:

  • 它完全可以处理android库
  • 您可以像往常一样使用scala项目制作Android库
  • 构建过程是完全自动化的,包括使用regulard Android工具对项目进行保护和导出

  • +“我想我恋爱了”部分1;)我正在使用Scala2.10和eclipse上的AndroidProgulardScala插件进行编程(见下文)。Scala可以被推荐用于android开发。奇怪但确实如此,从某一天起,我就不能再启动用Scala 2.9构建的android应用程序了(准确地说,
    2.9.3 RC1
    ),因为我在运行时找到了
    NoClassDefFound
    ,尽管相应的类确实被写入了
    classes.dex
    。但是最近的
    scala 2.10.0
    几乎可以正常工作(目前,与android有一些奇怪的不兼容,例如
    “”。format(…)
    方法生成的字节码android也无法正确理解。我不知道为什么。我已经切换到scala 2.10