androidX를 좋아하든 안 좋아하든 다 왔어요.
2053 단어 Android
com.android.support 시리즈의 의존 신청은 낯설지 않다. 호환을 위해 등장한 이들이 28일까지 구글 공식적으로 갱신을 중지한다고 발표한 이유는 구글 아빠가 이 이름을 좋아하지 않기 때문이다!!허허 농담이다. 다만 버전 관리가 좀 어지럽고 개발 중에도 각종 compat에 자주 부딪히며 원래는 많아졌기 때문에 구글은 지원 패키지를 규범화하기 시작했고androidX가 탄생했다.
androidx에 규범 코드가 나타나지만 과도기가 하나 생겨요. 어떤 과도기가 생겨요?support에서androidx로 이행하는 것은 우리에게 있어서 또 하나의 검색 교체이다.원래api 클래스가 변하지 않는 상황에서androidx 신청이 모두 바뀌었기 때문에 왜 교체를 찾습니까?이로 인해 같은 프로젝트에서 androidx와 support가 충돌할 수 있습니다. 흔히 볼 수 있는 오류는 다음과 같습니다.
Manifest merger failed : Attribute application@appComponentFactory value=(androidx.core.app.CoreComponentFactory) from [androidx.core:core:1.0.0-beta01] AndroidManifest.xml:22:18-86
is also present at [com.android.support:support-compat:28.0.0-alpha3] AndroidManifest.xml:22:18-91 value=(android.support.v4.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to element at AndroidManifest.xml:11:5-49:19 to override.
주의: 이 오류는 기본적으로 다음 개발에서 자주 발생합니다. 이것은 프로젝트에서androidx와support를 동시에 사용한 것입니다.
현재 많은 외국 코드들이 이미 androidx를 사용하기 시작했는데, 예를 들면 포토뷰 구글+sdk 등이다.그래서 앞으로 서포트는 무조건 탈락!!
우선 의존 가방의 변화를 살펴보자. 예를 들어 다음과 같다.
api 'com.android.support:appcompat-v7:28.0.0'
다음과 같이 변경되었습니다.
api 'androidx.appcompat:appcompat:1.0.0'
기타 패키지 변경 사항은 공식 문서를 참조할 수 있습니다.
// https://developer.android.com/jetpack/androidx/migrate
그럼 androidx로 어떻게 넘어가요?
우선:android 지원 패키지와 인용을androidx로 변경합니다. 이것은 앞에서 말한 검색 교체입니다.
그리고 프로젝트에 제3자 의존이 있을 것입니다. 그리고 현재 많은 의존이 sopport 패키지를 사용하고 있습니다. 그러면 반드시 보증해야 합니다.
classpath 'com.android.tools.build:gradle:3.1.+'
그러면android스튜디오는 sopport가androix로 전환하는 능력을 제공한다.gradle에 있어야 합니다.properties 파일에 구성을 추가하려면 다음과 같이 하십시오.
android.useAndroidX=true
android.enableJetifier=true
위의 작업이 끝난 후, 그럼 축하합니다. 당신의 프로젝트는 이미androix시대에 들어섰습니다.
도움이 된다면 좋아요를 눌러주세요!!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.