안 드 로 이 드 스튜디오 3.0.1 구덩이 메 우기 노트

4494 단어 androidstudio3.0.1
예전 에 대신 동료 강 선생님 에 게 들 었 는데 IntelliJ IDEA 의 기능 이 강하 고 Jet Brains 회사 가 상업 IDE(통합 개발 환경)를 개발 하 는 동시에 자바,Scala,Groovy 를 지원 한다 고 합 니 다.비 즈 니스 IDE 즉 IntelliJ 는 유 료 IDE 이다.물론 무료 커 뮤 니 티 버 전도 있 지만 많은 기능 이 거세 되 었 다.IntelliJ 는 안 드 로 이 드 프로젝트 개발 을 지원 하 는 것 외 에 도 AS 보다 기능 이 강 한 자바 웹 개발 환경 을 구축 할 수 있다.
아 라 는 최근 컴퓨터 를 다시 설치 해 아예 IntelliJ 를 설치 해 야 겠 다 고 생각 했 지만 다른 동료 가 Intellij 와 AS 가 충돌 할 것 이 라 고 말 했다.처음에 나 는 그 가 너무 어 려 서 괴 롭 히 기 를 좋아 하지 않 는 다 고 생각 했다.뒤에 as 3.0 자체 에 새로운 구덩이 가 있 기 때문에 Intellij 는 잠시 성공 하지 못 했 습 니 다.드디어 그것 을 내 려 놓 고 나중에 대처 하 겠 습 니 다.결국 출근 해서 일 해 야 하 는데,나 는 때 려 죽 일 수 없 는 절차 원 이다.
(1)주해 에 대하 여
Error:Execution failed for task ':Framework:javaPreCompileDebug'.
Annotation processors must be explicitly declared now. The following dependencies on the compile classpath are found to contain annotation processor. Please add them to the annotationProcessor configuration.
- butterknife-7.0.1.jar (butterknife-7.0.1.jar)
Alternatively, set android.defaultConfig.javaCompileOptions.annotationProcessorOptions.includeCompileClasspath = true to continue with previous behavior. Note that this option is deprecated and will be removed in the future.
See https://developer.android.com/r/tools/annotation-processor-error-message.html for more details.
Android Studio 홈 페이지 의 설명 은 다음 과 같 습 니 다.
Use the annotation processor dependency configuration
처음에 나 는 먼저 해결 방법 을 찾 았 고,뒤에서 야 위의 링크 를 보 았 다.해결책 부터 말 해 봐.build.gradle 의 defaultConfig 에 다음 내용 을 추가 합 니 다.

apply plugin: 'com.android.application'
android {
 ...
 defaultConfig {
 ...
 //   ,  ~
 javaCompileOptions {
  annotationProcessorOptions {
  includeCompileClasspath true
  }
 }
 }
}
(2)경로 에 관 하여
Error:All flavors must now belong to a named flavor dimension.Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
모든 flavors 는 같은 스타일 에 속 해 야 합 니 다.여러 제품 의 맛 을 조합 하 다
해결 방법 은 build.gradle 에 해당 하 는 표지 의 내용 을 추가 하 는 것 입 니 다.

flavorDimensions("vas", "normal") //  
 productFlavors {
 vas {
  dimension 'vas'
  buildConfigField "boolean", "ENABL_VAS", "true"
  dimension "vas" //  
 }
 normal {
  dimension 'normal'
  buildConfigField "boolean", "ENABL_VAS", "false"
  dimension "normal" //    
 }
 }
(3)슈 가 에 대해
3.0Android: Sugar ORM No Such Table Exception
프로젝트 에 슈 가 를 사용 하면 3.0AS 에서 항상 시 계 를 찾 을 수 없다 고 알려 줍 니 다.사실 해결 방법 은 매우 간단 하고 방문 한 사이트 도 일찍부터 어떻게 처리 해 야 하 는 지 를 말 했 지만 내 가 관건 적 인 점 을 빠 뜨 렸 기 때문에 늘 성공 하지 못 했다.
 
instant run 선택 하지 마 세 요
마지막!장치 의 오래된 응용 프로그램 을 마 운 트 해제 하려 면 반드시 마 운 트 해제 해 야 합 니 다!그리고 새로운 애플 리 케 이 션 을 다시 실행 하면 됩 니 다.
(4)Manifest merger 에 대하 여
Execution failed for task ':AppMain:processVasNormalDebugManifest'.  Manifest merger failed with multiple errors, see logs
Manifest 와 merge 가 충돌 하 는 상황 이 있 었 다 는 것 을 처음 알 았 습 니 다.재 밌 어,재 밌 어.
 
프로젝트 디 렉 터 리
내 프로젝트 에는 애플 리 케 이 션 하나 와 library 가 있 는데,이 두 모듈 은 모두 자신의 manifest 가 있다.원래 as 는 마지막 에 두 개의 manifest 를 합 치 는 데 도움 을 줄 수 있 기 때문에 두 사람 이 설정 한 내용 이 일치 하지 않 으 면 충돌 하고 merge 가 실 패 했 습 니 다.원 리 는 이렇다.두 manifest 중 어떤 값 이 크게 다른 지 비교 해서 수정 하면 됩 니 다.그럼 합병 결 과 는 어떻게 볼 까요?
예 를 들 어 제 가 AppMain 의 manifest 를 열 고 아래 의 Merged Manifest 모드 를 선택 하면 최종 합병 결 과 를 볼 수 있 습 니 다.
 
AppMain 의 manifest
저 는 제 상황 을 기억 합 니 다.AppMain 의 manifest 는 안 드 로 이 드:allow Backup="false"를 설정 한 다음 에 Framew Framework 의 manifest 를 안 드 로 이 드:allow Backup="true"로 설정 한 다음 에 청 두 를 false 로 바 꾸 면 됩 니 다.여러분 은 자신의 실제 상황 이 무엇 인지 보고 상응하는 수정 을 해 야 합 니 다.
총결산
위 에서 말 한 것 은 편집장 님 께 서 소개 해 주신 안 드 로 이 드 스튜디오 3.0.1 구덩이 메 우기 노트 입 니 다.여러분 께 도움 이 되 셨 으 면 좋 겠 습 니 다.궁금 한 점 이 있 으 시 면 메 시 지 를 남 겨 주세요.편집장 님 께 서 바로 답 해 드 리 겠 습 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기