[java] 배포 할 Android Jar 라이브러리 생성

필요에 따라 Android 애플리케이션으로 가져올 수있는 공유 소스 프로젝트를 작성할 수있는 Android 라이브러리 프로젝트를 알고 있습니다. 그러나 소스를 사용할 수 있어야합니다.

전통적인 JAR과 같은 다른 Android 프로젝트에서 사용할 수있는 폐쇄 소스 라이브러리를 빌드하고 배포하는 방법을 찾고 있습니다. 이것은 안드로이드 컴파일러의 사용이 필요하므로 바닐라 자바 ​​JAR 파일이 아닙니다. FWIW, JAR에 리소스 / 레이아웃을 포함시킬 필요가 없습니다.

나는 본 적이 http://andparcel.com/ 하지만 해결 방법 같은 느낌, 나는 오히려 뭔가 구글에서 ‘공식적으로 지원’을 사용합니다. 또한 빌드 한 JAR이 이전 / 새로운 버전의 Android SDK와 호환되는지 확인해야합니다 (예 : 대상 플랫폼 버전 등을 설정하는 방법이 필요함).

최신 Android 도구 세트를 사용하여 JAR 바이너리를 작성 / 소비 할 수 있습니까? 내가 어떻게 할 수 있는지에 대한 문서를 가리킬 수 있습니까?



답변

자원이없는 Android 라이브러리 프로젝트를 작성하는 경우 ADT (r16에서 처음 발견됨)는 ‘bin’폴더에 프로젝트와 동일한 이름의 .jar을 작성합니다.


답변

Android는 특별한 종류의 Android-JAR을 제공하지 않습니다. 그러나 할 수있는 일은 프로젝트에 build.xml을 추가하고 개미로 JAR을 빌드하는 것입니다.

내 build.xml은 다음과 같습니다.

<project name="MyAndroidLib" default="dist" basedir=".">
  <description>
This is my Android lib
  </description>
  <!-- set global properties for this build -->
  <property name="src" location="src" />
  <property name="bin" location="bin" />

  <target name="jar">
    <jar destfile="MyAndroidLib.jar" basedir="bin/classes/">
      <!-- replace 'com' by what ever you are using -->
      <!-- as first part of the package name -->
      <!-- e.g. de, org, ... -->
      <!-- the ** is important to include the directory recursively -->
      <include name="com/**" />
    </jar>
  </target>
</project>

ant jar프로젝트 기본 폴더에서 실행하여 JAR을 빌드하십시오 .


답변

“일반적인”Java 프로젝트를 생성하고 여기에서 Android.jar을 가져올 수 있습니다. 그러면 SDK의 모든 구성 요소에 액세스 할 수 있습니다. 그런 다음 프로젝트를 jar로 내보내고 Android 앱에서로드 할 수 있습니다. 이것은 훌륭하게 작동하며 그것을 수행하는 간단한 방법 인 것처럼 보입니다.


답변

jar를 만들려는 프로젝트의 속성으로 이동하십시오 .Android 탭을 클릭하십시오. Is 라이브러리에서 체크하십시오. 이제 bin 폴더에서 .jar 파일을 볼 수 있습니다. 사용하려는 위치에서 사용하십시오.


답변

Google이 ‘공식적으로 지원하는’유일한 솔루션은 라이브러리 프로젝트이며 소스 코드를 배포해야합니다. 일반적인 방법으로 JAR을 작성할 수 있지만 그 안에 자원을 포함하거나 참조 할 수는 없습니다.

불행히도 소스 코드 요구 사항을 해결할 수있는 수단으로 라이브러리 프로젝트 내에 패키지 된 JAR을 포함시키는 것도 불가능하다고 생각합니다.


답변

최신 Android Studio 1.2 빌드에서 JAR 라이브러리 생성은 포인트 앤 클릭처럼 간단하게 이루어졌습니다.

따라야 할 단계 :

  • 파일로 이동-> 새로 만들기-> 새 모듈
    여기에 이미지 설명을 입력하십시오
  • 옵션 목록 끝에서 “Java Library”를 선택하십시오.
    여기에 이미지 설명을 입력하십시오
  • jar 라이브러리의 이름과 클래스 이름을 입력하고 완료 버튼을 누르십시오
    여기에 이미지 설명을 입력하십시오
  • 그게 다야!

다음 단계는 Jar 라이브러리를 앱의 종속성으로 추가하는 것입니다. 그저 단순한

  • 파일로 이동-> 프로젝트 구조-> ‘앱’선택-> ‘종속성’선택
  • 하단에서 ‘+’를 선택하십시오-> ‘모듈 의존성’을 선택하십시오.
    여기에 이미지 설명을 입력하십시오
  • 위에서 만든 jar lib 모듈을 선택하십시오.
    여기에 이미지 설명을 입력하십시오
    여기에 이미지 설명을 입력하십시오
  • Ok를 선택하면됩니다.

…. 또는 아래 줄을 앱 gradle 파일에 추가 할 수 있습니다

dependencies {
      compile fileTree(dir: 'libs', include: ['*.jar']) // Default Gradle Task, should be already present
      compile 'com.android.support:appcompat-v7:21.0.3' // Default Gradle Task, should be already present

      compile project(':nameOfYourJarLibraryModule') // This is your jar library module
 }

지원되는 JAR이 다시 Android Studio로 돌아 왔지만 Google은 Android Archive (AAR)를 홍보하고 있습니다. AAR과 JAR의 차이점을 확인하려면 이 링크를 참조하십시오.


답변

이것을 시도하십시오 : 이것은 작동합니다

1) IsLibrary 플래그를 선택 해제하여 라이브러리 프로젝트를 일반 프로젝트로 만듭니다.

2) 프로젝트를 Android 애플리케이션으로 실행하십시오. (오류가 표시되지 않습니다)

3) bin 폴더에는 .apk와 함께 .jar 파일이 있습니다.

4) 라이브러리를 사용하려는 .jar을 제공하십시오.

5) 외부 항아리를 빌드 경로로 가져 오라고 지시하십시오.

이것은 모든 리소스에서 잘 작동합니다. 행운을 빕니다.