복붙노트

[SCALA] 안드로이드에 대한 스칼라 프로그래밍

SCALA

안드로이드에 대한 스칼라 프로그래밍

나는 스칼라 2.7.3 최종와 스칼라와 안드로이드에서 자습서를 따랐다. 그 결과 안드로이드 응용 프로그램이 작동하지만 심지어 가장 기본적인 응용 프로그램 컴파일 (!) 몇 분 정도 걸립니다 모바일 애플리케이션을위한 쇼 스토퍼입니다 압축 9백킬로바이트을 필요로한다. 또한, IDE 지금과 그때마다 메모리가 실행됩니다. 나는 덱스는 스칼라 라이브러리와 같은 큰 라이브러리를 만들어하지 않습니다 가정합니다.

해결법

  1. ==============================

    1.나는 아무것도 너무 서사시 스칼라에서 몇 가지 기본적인 안드로이드 애플리케이션을 작성했습니다. 나는 "treeshake"를 사용하도록 제안 된 자바 프로그래머없는, 내가 친구에 의해 설명 된 그 jar 파일에서 모든 불필요한 라이브러리 아웃이 스트립.

    나는 아무것도 너무 서사시 스칼라에서 몇 가지 기본적인 안드로이드 애플리케이션을 작성했습니다. 나는 "treeshake"를 사용하도록 제안 된 자바 프로그래머없는, 내가 친구에 의해 설명 된 그 jar 파일에서 모든 불필요한 라이브러리 아웃이 스트립.

    나는 그것을 문서화하지 않은,하지만 나는 다른 누군가가 이미이 발견 :

    http://chneukirchen.org/blog/archive/2009/04/programming-for-android-with-scala.html

    Proguard와 유일한 해결책이 아니라, 당신은 정장 작업 흐름 또는 더 환경에 적합 것을 무언가를 찾을 수 있습니다.

    또한 단지 참조 https://source.android.com/source/jack.html 구축 및 메모리 시간을 줄이는 꽤 많이 다루고있는 JACK 실현 구글

  2. ==============================

    2.Gradle을 스칼라에서 안드로이드 응용 프로그램을 만들 수 있도록 이제 안드로이드 플러그인을 사용할 수 있습니다. 그것은 그래서 당신의 요구를 충족하는 것, 결과 APK 파일에서 지방을 손질하는 ProGuard에서 도구를 통합합니다.

    Gradle을 스칼라에서 안드로이드 응용 프로그램을 만들 수 있도록 이제 안드로이드 플러그인을 사용할 수 있습니다. 그것은 그래서 당신의 요구를 충족하는 것, 결과 APK 파일에서 지방을 손질하는 ProGuard에서 도구를 통합합니다.

    https://github.com/jvoegele/gradle-android-plugin/wiki

  3. ==============================

    3.SBT-안드로이드 - 플러그인 : 스칼라 기반 빌더 SBT에 대한 플러그인도 있습니다.

    SBT-안드로이드 - 플러그인 : 스칼라 기반 빌더 SBT에 대한 플러그인도 있습니다.

  4. ==============================

    4.자습서 및 예를 들어, 참조 스테판 Micheloud의 "탐색 안드로이드"페이지 : http://lamp.epfl.ch/~michelou/android/

    자습서 및 예를 들어, 참조 스테판 Micheloud의 "탐색 안드로이드"페이지 : http://lamp.epfl.ch/~michelou/android/

  5. ==============================

    5.나는 이클립스 3.7, 스칼라 2.10 및 플러그인 AndroidProguardScala의 V50으로이 세부적인 솔루션을 확인 :

    나는 이클립스 3.7, 스칼라 2.10 및 플러그인 AndroidProguardScala의 V50으로이 세부적인 솔루션을 확인 :

    https://stackoverflow.com/a/11084146/1287856

    모든 것이 잘 작동합니다. scalafied 주요 활동 클래스와 간단한 테스트 응용 프로그램은 38 KB 걸립니다. 도서관 프로젝트가 지원됩니다. 프로젝트를 내보낼 때 Proguard와 활성화됩니다.

  6. ==============================

    6.스칼라에 대한 개발 안드로이드 애플 리케이션은 지속적으로 진화하고있다. 그것을 할 수있는 현재 가장 좋은 방법은 * 유지되는 안드로이드-SDK-플러그인과 함께 SBT에 표시되고 내 스칼라 / 안드로이드 프로젝트에 나를 위해 잘 작동합니다. 이미 언급 한 Scaloid이 플러그인을 사용하는 방법을 보여줍니다 다소 최근의 예는 찾아 볼 수 있습니다.

    스칼라에 대한 개발 안드로이드 애플 리케이션은 지속적으로 진화하고있다. 그것을 할 수있는 현재 가장 좋은 방법은 * 유지되는 안드로이드-SDK-플러그인과 함께 SBT에 표시되고 내 스칼라 / 안드로이드 프로젝트에 나를 위해 잘 작동합니다. 이미 언급 한 Scaloid이 플러그인을 사용하는 방법을 보여줍니다 다소 최근의 예는 찾아 볼 수 있습니다.

    이 질문은 스택 오버플로 오래된 답변이 질문의 전형적인 예입니다 있습니다. 이 답변은 가능성뿐만 아니라 어떤 점에서 구식이 될 것입니다.

    *이 응답 스레드에서 언급 된 다른 SBT 기반 프로젝트는 코드를 작성하는 시점에서 지난 6 개월 동안 그들을 위해 기록되는이 나타나지 않습니다. 그들은 스칼라와 SBT의 최신 버전과의 호환성 문제가있을 수 있습니다.

  7. ==============================

    7.당신이 Maven을 사용하는 경우, 사용은 안드로이드 스칼라 테스트를 시작 템플릿으로. 그것은 밖으로의 상자 나를 위해 잘 작동합니다.

    당신이 Maven을 사용하는 경우, 사용은 안드로이드 스칼라 테스트를 시작 템플릿으로. 그것은 밖으로의 상자 나를 위해 잘 작동합니다.

    Scaloid 도움이 스칼라 스타일에 안드로이드 프로그램을 작성하는 것을 스칼라로 작성된 안드로이드 API의 래퍼입니다.

  8. ==============================

    8.당신은 안드로이드 응용 프로그램을 만들 수 Gradle을에 의해 외부 내장, SBT없이 안드로이드에 스칼라를 사용할 수 있습니다. https://github.com/yareally/android-scala-intellij-no-sbt-plugin

    당신은 안드로이드 응용 프로그램을 만들 수 Gradle을에 의해 외부 내장, SBT없이 안드로이드에 스칼라를 사용할 수 있습니다. https://github.com/yareally/android-scala-intellij-no-sbt-plugin

    Gradle을은 SBT보다 안드로이드에 대한 더 네이티브 건물 도구입니다.

    하게 IntelliJ IDEA 워크 벤치에 미리와 같은 스칼라 클라이언트와 서버 측 솔루션 개념 및 Gradle을 구축 도구의 좋은 예입니다.

    핵심 클래스는 클라이언트와 서버에 대한 일반적인 것을 큰 사전.

    https://github.com/ghik/akkdroid

    IDEA와 안드로이드 - 플러그인에 대한 좋은 튜토리얼 : http://fxthomas.github.io/android-plugin/

  9. ==============================

    9.안드로이드에 대한 스칼라의 가장 큰 문제는 컴파일 시간이다.

    안드로이드에 대한 스칼라의 가장 큰 문제는 컴파일 시간이다.

    아마도 듀얼 쿼드 코어에 IDEA13 / 스칼라 플러그인 컴파일 스트리핑 Proguard와 클래스의 (8-CPU) 8 기가 바이트 E5450 Xeon은 이상 2 분 정도 걸릴 수 있기 때문이다.

    나는 단순히 컴파일 시간이 너무 실망했다로 약간 큰 스칼라 안드로이드 프로젝트를 완료 한 후 자바로 다시 이동.

  10. from https://stackoverflow.com/questions/476111/scala-programming-for-android by cc-by-sa and MIT license