Android 개발용 라이브러리를 작성하려면 어떻게 해야 합니까?
저는 델파이 프로그래머입니다수년에 걸쳐 델파이 프로그램에 사용할 수 있는 수백 개의 수업과 루틴을 작성했습니다.
이 라이브러리는 dlib라고 불리며 이 폴더를 라이브러리 경로에 넣고 Delphi 유닛의 uses 섹션에 있는 유닛 중 하나를 사용하면 모든 Delphi 프로그램에서 사용할 수 있습니다.
Java와 Android의 개발은 전혀 처음이라 어떻게 하면 좋을지 궁금합니다.
그래서 어떻게 하면 내가 쓰는 모든 Android 프로그램에서 자신의 클래스를 작성하고, 그것들을 글로벌 폴더에 넣고, 이러한 클래스와 루틴을 사용할 수 있을까?
이것이 기본적인 질문이라는 것은 알고 있습니다.구글을 검색하여 이클립스에서 시험해 보면 알 수 있을 것입니다만, 누군가가 저를 올바른 방향으로 이끌 수 있다면, 저는 시간을 절약할 수 있을 것입니다.
고마워요.
Android Library Project를 생성해야 합니다.Eclipse에서 Android 프로젝트를 만들고 Project Properties -> Android를 입력하고 isLibrary 속성을 확인합니다.이제 이 라이브러리를 동일한 속성 페이지의 목록에 추가하여 Android 응용 프로그램 프로젝트에 추가할 수 있습니다.
라이브러리 프로젝트 관련 작업 섹션의 자세한 설명
Android Studio에서 라이브러리를 만드는 방법:
라이브러리 모듈 생성
프로젝트에서 새 라이브러리 모듈을 만들려면 다음과 같이 진행하십시오.
[ File ] > [ New ]> [ New Module ]을 클릭합니다.
[ Create New Module ]창이 뜨면 [Android Library]를 클릭하여 [Next]을 클릭합니다.
Java Library를 작성하는 옵션도 있습니다.이 라이브러리는 기존의 JAR 파일을 빌드합니다.JAR 파일은 많은 프로젝트(특히 다른 플랫폼과 코드를 공유하려는 경우)에 유용하지만 Android 리소스나 매니페스트 파일을 포함할 수 없으므로 Android 프로젝트에서 코드 재사용에 매우 유용합니다.이 가이드에서는 Android 라이브러리 작성에 중점을 두고 있습니다.
라이브러리 이름을 지정하고 라이브러리의 코드에 대한 최소 SDK 버전을 선택한 다음 마침을 클릭합니다.
Gradle 프로젝트 동기화가 완료되면 라이브러리 모듈이 왼쪽의 Project 패널에 나타납니다.새 모듈 폴더가 표시되지 않으면 Android 보기를 표시하는지 확인하십시오.
앱 모듈을 라이브러리 모듈로 변환
재사용하려는 코드가 모두 포함된 기존 앱 모듈이 있는 경우 다음과 같이 라이브러리 모듈로 전환할 수 있습니다.
.
build.gradle
filename을 클릭합니다.이 을 삭제해 .
applicationId
안드로이드 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★」파일 맨 위에 다음 항목이 표시됩니다.
apply plugin: 'com.android.application'
바꿔주세요.
apply plugin: 'com.android.library'
파일을 저장하고 [Tools]> [ Android ]> [ Sync Project with Gradle Files ]을 클릭합니다.
라이브러리가 Java 코드로 구성된 .java 파일에 있는 경우.모바일에서 라이브러리를 사용하는 방법에 대한 정말 자세한 튜토리얼이 있습니다.tutsplus.com 를 참조해 주세요.아래 링크:
예를 들어 Github.com에 있는 Chrisbanes의 Pull To Refresh 라이브러리를 사용하고 싶다고 생각하고 있습니다.라이브러리의 구조는 안드로이드 앱 형태입니다.이 문서의 형식은 다음과 같습니다.
res/
src/
AndroidManifest.xml
pom.xml
project.properties
Eclipse에서의 사용 방법:
- 이클립스에서 새 프로젝트를 만듭니다.프로젝트의 이름을 지정하십시오."기존 소스에서 프로젝트 생성"을 선택합니다."위치"에서 위의 파일을 포함하는 루트 폴더의 위치를 선택하십시오.대상을 선택하고 마침을 클릭합니다.
- 새로 만든 프로젝트의 속성을 선택합니다."Android" 옵션을 선택합니다."라이브러리" 체크박스를 아직 선택하지 않은 경우 선택합니다.속성을 닫습니다.
- 이 라이브러리를 사용할 프로젝트에서 라이브러리에 참조를 추가합니다.이 라이브러리를 사용하는 프로젝트를 선택하십시오.[ Properties ]를 엽니다."Android" 옵션을 선택합니다."Is Library" 하단에 있습니다."Is Library" 체크박스를 켜지 마세요.오른쪽의 [추가] 버튼을 클릭합니다.1단계와 2단계에서 작성한 프로젝트가 선택 가능한 상태로 나열됩니다.선택한 후 적용을 클릭합니다.속성을 닫습니다.
- 프로젝트의 클래스를 참조할 준비가 되었습니다.
Java를 사용하면 해당 라이브러리의 모든 클래스(*.class 파일)를 포함하는 Java 아카이브(jar)를 만들 수 있으며 jar 파일이 라이브러리가 됩니다.
사용하려면 클래스 경로에 추가합니다.
('jar'와 'classpath'의 경우 기본 Java 개념의 경우 Google을 사용하여 튜토리얼을 검색하십시오.어쨌든 이러한 개념을 이해해야 합니다.빠르면 빠를수록 좋습니다.)
모든 클래스를 Java로 변환하고 jar 파일을 만듭니다.libs/폴더에 복사한 다음 빌드 경로를 추가하여 안드로이드 프로젝트에서 이 jar를 사용하십시오.프로젝트를 깨끗이 정리하고 실행하세요.
새로운 Android Studio 버전과 gradle 7.0.3을 사용하는 경우
Android Studio Arctic Fox | 2020.3.1 패치 3 빌드 #AI-203.7717.56.2031.7784292. 런타임 버전: 11.0.10+0-b96-724918964 VM: OpenJDK 64비트 서버 VM by Oracle 10 GC.auto.import.disabled=true
모듈 생성 중
- 빈 액티비티를 사용하여 새 프로젝트 생성
- file -> new -> new module -> 을 클릭하여 Android 라이브러리를 선택합니다.
- 새 모듈을 만든 후 라이브러리용 Java 클래스 또는 기타 항목을 추가할 수 있습니다.
AAR 파일로 라이브러리 내보내기
자세한 내용은 이 항목을 참조하십시오.
라이브러리를 jitpack으로 내보냅니다.이오
이 파일을 다음과 같이 설정합니다.
build.gradle(프로젝트)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
mavenCentral()
maven { url 'https://jitpack.io' }
maven { url "https://plugins.gradle.org/m2/" }
}
dependencies {
classpath 'com.android.tools.build:gradle:7.0.3'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.5'
classpath 'com.github.dcendents:android-maven-gradle-plugin:2.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
build.gradle(예: 어플리케이션)
plugins {
id 'com.android.application'
}
android {
lintOptions {
abortOnError false
}
}
android {
compileSdk 31
defaultConfig {
minSdk 16
targetSdk 31
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.4.0'
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.2'
testImplementation 'junit:junit:4.13.2'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
build.gradle (표준:당신의 라이브러리명)
plugins {
id 'com.android.library'
id 'maven-publish'
}
task androidSourcesJar(type: Jar) {
classifier 'sources'
from android.sourceSets.main.java.srcDirs
}
project.afterEvaluate {
publishing {
publications {
release(MavenPublication) {
groupId 'com.github.YourGithubUsername'
from components.release
artifact androidSourcesJar // optional sources
}
}
}
}
android {
compileSdk 31
defaultConfig {
minSdk 16
targetSdk 31
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.4.0'
implementation 'com.google.android.material:material:1.4.0'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
}
루트 프로젝트에서 파일 jitpack.yml을 만듭니다(Your ProjectName -> Gradle -> 오른쪽 클릭 -> new -> file -> file -> jitpack.yml).이 코드를 jitpack.yml 파일에 저장합니다.
jdk:
- openjdk11
before_install:
- chmod +x gradlew
install:
# - ./gradlew build :lib:publishToMavenLocal
- ./gradlew build publishToMavenLocal
jitpack 웹 사이트 방문
라이브러리를 업로드하려면 다음 단계를 수행하십시오.
언급URL : https://stackoverflow.com/questions/4085313/how-to-create-your-own-library-for-android-development-to-be-used-in-every-progr
'programing' 카테고리의 다른 글
C#의 '수익률' 키워드에 해당하는 Java가 있습니까? (0) | 2022.09.03 |
---|---|
라우터에 저장하기 위한 액세스 (0) | 2022.09.03 |
사용자 지정 지시문을 통해 v-model 속성 값을 수정하는 방법은 무엇입니까? (0) | 2022.09.03 |
Vuetify - 페이지 매기는 방법? (0) | 2022.09.03 |
매개 변수를 사용하여 생성자 모의 (0) | 2022.09.03 |