Cordova-plugin-firebase: λΉŒλ“œ 였λ₯˜: aptλ₯Ό μ‹€ν–‰ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2019λ…„ 06μ›” 18일  Β·  72μ½”λ©˜νŠΈ  Β·  좜처: arnesson/cordova-plugin-firebase

μ•ˆλ…•ν•˜μ„Έμš”!
Cordova ν”ŒλŸ¬κ·ΈμΈ add https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issueλ₯Ό 톡해 ν”ŒλŸ¬κ·ΈμΈμ„ μ‚¬μš©ν•  λ•Œ 이 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

`cordova-android-support-gradle-release: Android ν”Œλž«νΌ: V7+
cordova-android-support-gradle-release: μ‚¬μš©μž μ •μ˜ 버전 '27.+'λ₯Ό /home/aurumque/Cordova/luiscoba/platforms/android/app/build.gradle에 μž‘μ„±ν–ˆμŠ΅λ‹ˆλ‹€.
cordova-android-support-gradle-release: μ‚¬μš©μž μ •μ˜ 버전 '27.+'λ₯Ό /home/aurumque/Cordova/luiscoba/platforms/android/cordova-android-support-gradle-release/luiscoba-cordova-android-support-에 μž‘μ„±ν–ˆμŠ΅λ‹ˆλ‹€. gradle-release.gradle
Android μŠ€νŠœλ””μ˜€ ν”„λ‘œμ νŠΈκ°€ κ°μ§€λ˜μ—ˆμŠ΅λ‹ˆλ‹€.
cordova-android-support-gradle-release: Android ν”Œλž«νΌ: V7+
cordova-android-support-gradle-release: μ‚¬μš©μž μ •μ˜ 버전 '27.+'λ₯Ό /home/aurumque/Cordova/luiscoba/platforms/android/app/build.gradle에 μž‘μ„±ν–ˆμŠ΅λ‹ˆλ‹€.
cordova-android-support-gradle-release: μ‚¬μš©μž μ •μ˜ 버전 '27.+'λ₯Ό /home/aurumque/Cordova/luiscoba/platforms/android/cordova-android-support-gradle-release/luiscoba-cordova-android-support-에 μž‘μ„±ν–ˆμŠ΅λ‹ˆλ‹€. gradle-release.gradle
Androidμ—μ„œ Firebase μ€€λΉ„
ANDROID_HOME=/opt/android-sdk/
JAVA_HOME=/usr/lib/jvm/java-8-openjdk
사진관
ν•˜μœ„ ν”„λ‘œμ νŠΈ 경둜: CordovaLib
ν•˜μœ„ ν”„λ‘œμ νŠΈ 경둜: μ•±
publishNonDefaultλŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμœΌλ©° 더 이상 νš¨κ³Όκ°€ μ—†μŠ΅λ‹ˆλ‹€. 이제 λͺ¨λ“  λ³€ν˜•μ΄ κ²Œμ‹œλ©λ‹ˆλ‹€.
':app' ν”„λ‘œμ νŠΈμ˜ '컴파일' ꡬ성은 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λŒ€μ‹  'κ΅¬ν˜„'을 μ‚¬μš©ν•˜μ„Έμš”.
+---------------------------------------------------------------- ----------------
| cordova-android-support-gradle-release: 27.+
+---------------------------------------------------------------- ----------------
Task.leftShift(Closure) λ©”μ„œλ“œλŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμœΌλ©° Gradle 5.0μ—μ„œ 제거될 μ˜ˆμ •μž…λ‹ˆλ‹€. λŒ€μ‹  Task.doLast(Action)λ₯Ό μ‚¬μš©ν•˜μ‹­μ‹œμ˜€.
build_16h44ethchy300tz3gs66tp8t.run(/home/aurumque/Cordova/luiscoba/platforms/android/app/build.gradle:151)
registerResGeneratingTaskλŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. registerGeneratedFolders(FileCollection)λ₯Ό μ‚¬μš©ν•˜μ„Έμš”.
registerResGeneratingTaskλŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. registerGeneratedFolders(FileCollection)λ₯Ό μ‚¬μš©ν•˜μ„Έμš”.
:C ordovaLib:μ΅œμ‹  사전 λΉŒλ“œ
:C ordovaLib:preReleaseBuild μ΅œμ‹  버전
:C ordovaLib:compileReleaseAidl μ΅œμ‹  정보
:C ordovaLib:compileReleaseRenderscript μ΅œμ‹ 
:C ordovaLib:checkReleaseManifest μ΅œμ‹  정보
:C ordovaLib:generateReleaseBuildConfig μ΅œμ‹ 
:C ordovaLib:prepareLintJar μ΅œμ‹  정보
:C ordovaLib:generateReleaseResValues β€‹β€‹μ΅œμ‹ 
:C ordovaLib:generateReleaseResources μ΅œμ‹  정보
:C ordovaLib:packageReleaseResources μ΅œμ‹  정보
:C ordovaLib:platformAttrExtractor μ΅œμ‹ 
:C ordovaLib:processReleaseManifest μ΅œμ‹  정보
:C ordovaLib:processReleaseResources μ΅œμ‹  정보
:C ordovaLib:generateReleaseSources μ΅œμ‹ 
:C ordovaLib:javaPreCompileRelease μ΅œμ‹  버전
:C ordovaLib:compileReleaseJavaWithJavac μ΅œμ‹  버전
:C ordovaLib:processReleaseJavaRes NO-SOURCE
:C ordovaLib:transformClassesAndResourcesWithPrepareIntermediateJarsForRelease μ΅œμ‹  정보
: μ•±:μ΅œμ‹  사전 λΉŒλ“œ
: app:preReleaseBuild μ΅œμ‹  버전
: μ•±:compileReleaseAidl μ΅œμ‹ 
:C ordovaLib:packageReleaseRenderscript NO-SOURCE
: μ•±:compileReleaseRenderscript μ΅œμ‹ 
: μ•±:checkReleaseManifest μ΅œμ‹  정보
: μ•±:generateReleaseBuildConfig μ΅œμ‹ 
: μ•±:prepareLintJar μ΅œμ‹  정보
:C ordovaLib:mergeReleaseShaders μ΅œμ‹ 
:C ordovaLib:compileReleaseShaders μ΅œμ‹ 
:C ordovaLib:generateReleaseAssets μ΅œμ‹  정보
:C ordovaLib:mergeReleaseAssets μ΅œμ‹  정보
: μ•±:mergeReleaseShaders μ΅œμ‹ 
: μ•±:compileReleaseShaders μ΅œμ‹ 
: μ•±:generateReleaseAssets μ΅œμ‹  정보
: app:mergeReleaseAssets μ΅œμ‹  정보
: μ•±:ν”„λ‘œμ„ΈμŠ€λ¦΄λ¦¬μŠ€Googleμ„œλΉ„μŠ€
json 파일 νŒŒμ‹±: /home/aurumque/Cordova/luiscoba/platforms/android/app/google-services.json
: μ•±:createReleaseCompatibleScreenManifests μ΅œμ‹ 
: app:processReleaseManifest μ΅œμ‹  정보
: app:fabricGenerateResourcesRelease
: μ•±:generateReleaseResValues μ΅œμ‹ 
: μ•±:generateReleaseResources μ΅œμ‹ 
: μ•±:mergeReleaseResources
: app:splitsDiscoveryTaskRelease μ΅œμ‹  버전
: app:processReleaseResources/home/aurumque/.gradle/caches/transforms-1/files-1.1/customtabs-27.1.1.aar/66d15b7c1890e969f944ae6c7dea5271/res/values/values.xml : 및 AAPT: λ¦¬μ†ŒμŠ€ 및 AAPT: 였λ₯˜ μ„€μ • 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.

/home/aurumque/.gradle/caches/transforms-1/files-1.1/customtabs-27.1.1.aar/66d15b7c1890e969f944ae6c7dea5271/res/values/values.xml: AAPT: 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/tt λ₯Ό 찾을 수 μ—†μŒ

/home/aurumque/Cordova/luiscoba/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values/values. xml:103 : 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/fontVariationSettings λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.
/home/aurumque/Cordova/luiscoba/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values/values. xml:103 : 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/ttcIndex λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.
였λ₯˜: μ°Έμ‘° 연결에 μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

aapt μ‹€ν–‰ μ‹€νŒ¨
com.android.ide.common.process.ProcessException: aapt μ‹€ν–‰ μ‹€νŒ¨
com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)μ—μ„œ
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
원인: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)
com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794)
... 41개 더
원인: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$makeValidatedPackage$1(QueueableAapt2.java:179)
원인: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:463)
com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:415)
com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:332)
com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)

FAILURE: μ˜ˆμ™Έμ™€ ν•¨κ»˜ λΉŒλ“œμ— μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

  • 무엇이 잘λͺ»λ˜μ—ˆλŠ”지:
    μž‘μ—… ': app:processReleaseResources '에 λŒ€ν•œ 싀행에 μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

    aapt μ‹€ν–‰ μ‹€νŒ¨

  • λ…Έλ ₯ν•˜λ‹€:
    --stacktrace μ˜΅μ…˜κ³Ό ν•¨κ»˜ μ‹€ν–‰ν•˜μ—¬ μŠ€νƒ 좔적을 κ°€μ Έμ˜΅λ‹ˆλ‹€. 더 λ§Žμ€ 둜그 좜λ ₯을 μ–»μœΌλ €λ©΄ --info λ˜λŠ” --debug μ˜΅μ…˜κ³Ό ν•¨κ»˜ μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€.

  • https://help.gradle.org μ—μ„œ 더 λ§Žμ€ 도움을 λ°›μœΌμ„Έμš”.

λΉŒλ“œ μ‹€νŒ¨ 0초
μ‹€νŒ¨ν•œ
μ‹€ν–‰ κ°€λŠ₯ν•œ μž‘μ—… 33개: μ‹€ν–‰λœ μž‘μ—… 4개, μ΅œμ‹  μž‘μ—… 29개
/home/aurumque/Cordova/luiscoba/platforms/android/gradlew: μ’…λ£Œ μ½”λ“œ 1 였λ₯˜ 좜λ ₯으둜 λͺ…λ Ή μ‹€νŒ¨:
/home/aurumque/.gradle/caches/transforms-1/files-1.1/customtabs-27.1.1.aar/66d15b7c1890e969f944ae6c7dea5271/res/values/values.xml: AAPT: 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/fontV λ₯Ό 찾을 수 μ—†μŒ

/home/aurumque/.gradle/caches/transforms-1/files-1.1/customtabs-27.1.1.aar/66d15b7c1890e969f944ae6c7dea5271/res/values/values.xml: AAPT: 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/tt λ₯Ό 찾을 수 μ—†μŒ

/home/aurumque/Cordova/luiscoba/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values/values. xml:103 : 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/fontVariationSettings λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.
/home/aurumque/Cordova/luiscoba/platforms/android/app/build/intermediates/incremental/mergeReleaseResources/merged.dir/values/values. xml:103 : 였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/ttcIndex λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.
였λ₯˜: μ°Έμ‘° 연결에 μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

aapt μ‹€ν–‰ μ‹€νŒ¨
com.android.ide.common.process.ProcessException: aapt μ‹€ν–‰ μ‹€νŒ¨
com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)μ—μ„œ
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
원인: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)
com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794)
... 41개 더
원인: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$makeValidatedPackage$1(QueueableAapt2.java:179)
원인: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:463)
com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:415)
com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:332)
com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)

FAILURE: μ˜ˆμ™Έμ™€ ν•¨κ»˜ λΉŒλ“œμ— μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

  • 무엇이 잘λͺ»λ˜μ—ˆλŠ”지:
    μž‘μ—… ': app:processReleaseResources '에 λŒ€ν•œ 싀행에 μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

    aapt μ‹€ν–‰ μ‹€νŒ¨

  • λ…Έλ ₯ν•˜λ‹€:
    --stacktrace μ˜΅μ…˜κ³Ό ν•¨κ»˜ μ‹€ν–‰ν•˜μ—¬ μŠ€νƒ 좔적을 κ°€μ Έμ˜΅λ‹ˆλ‹€. 더 λ§Žμ€ 둜그 좜λ ₯을 μ–»μœΌλ €λ©΄ --info λ˜λŠ” --debug μ˜΅μ…˜κ³Ό ν•¨κ»˜ μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€.

  • https://help.gradle.org μ—μ„œ 더 λ§Žμ€ 도움을 λ°›μœΌμ„Έμš”.

λΉŒλ“œ μ‹€νŒ¨ 0초
`
λ‚˜λŠ” 상싀감이 λ“€μ–΄! λˆ„κ΅¬λ“ μ§€ λ„μšΈ 수 μžˆλ‹€λ©΄ κΈ°μ©λ‹ˆλ‹€.
κ°μ‚¬ν•©λ‹ˆλ‹€

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ

  2. ionic cordova build android (μ‹€νŒ¨)

  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:

cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

λͺ¨λ“  72 λŒ“κΈ€

같은 λ°°μ—μ„œ. μš°λ¦¬λŠ” μ§€κΈˆ 6μ‹œκ°„ λ™μ•ˆ 이 문제λ₯Ό ν•΄κ²°ν•˜λ €κ³  λ…Έλ ₯ν–ˆμŠ΅λ‹ˆλ‹€.

Firebase νŒ€μ€ 6μ›” 17일 μ—…λ°μ΄νŠΈμ—μ„œ λ‹€μ‹œ μ œλ™ λ³€κ²½ 사항을 μ μš©ν–ˆμŠ΅λ‹ˆλ‹€.
https://firebase.google.com/support/release-notes/android#update_ -_june_17_2019

μ•„λ§ˆλ„ 이것이 문제λ₯Ό μΌμœΌν‚¨ 것 κ°™μŠ΅λ‹ˆλ‹€..

같은 문제

λ‚˜λŠ” λ˜ν•œ 같은 문제λ₯Ό κ²ͺκ³  μžˆμŠ΅λ‹ˆλ‹€. λ§ˆμ§€λ§‰ μˆœκ°„μ— λ‚΄ Android μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λΉŒλ“œν•  수 μ—†μ—ˆμŠ΅λ‹ˆλ‹€. 이 Cordova Firebase ν”ŒλŸ¬κ·ΈμΈμ΄ 문제λ₯Ό μΌμœΌν‚€λŠ” 것을 μ°ΎκΈ° μœ„ν•΄ ν•˜λ£¨ 쒅일 μ‹œκ°„μ„ μžƒμ—ˆμŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” μΆ”κ°€λ₯Ό μ‹œλ„ν–ˆλ‹€
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
build.gradleν•˜μ§€λ§Œ μƒˆλ‘œμš΄ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€ :(

였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/fontVariationSettings λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.

였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/ttcIndex λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” μΆ”κ°€λ₯Ό μ‹œλ„ν–ˆλ‹€
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
build.gradleν•˜μ§€λ§Œ μƒˆλ‘œμš΄ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€ :(

였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/fontVariationSettings λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.

였λ₯˜: λ¦¬μ†ŒμŠ€ android:attr/ttcIndex λ₯Ό 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.

λ™μΌν•œ λ¬Έμ œκ°€ λ°œμƒν•˜μ—¬ 이 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ ν•˜λ£¨ 쒅일 μ‹œκ°„μ„ λ³΄λƒˆμ§€λ§Œ 해결책이 μ—†μ—ˆμŠ΅λ‹ˆλ‹€.

@ https://github.com/arnesson/cordova-plugin-firebase/issues/1083#issuecomment -503224816

λ‚˜λ₯Ό μœ„ν•œ 이 μž‘ν’ˆ!

ionic cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-firebase 제거
이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-android-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.

이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]

이것은 Firebase ν”ŒλŸ¬κ·ΈμΈμ˜ 이전 버전을 μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— 였늘의 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

UnhandledPromiseRejectionWarning: 였λ₯˜ [ERR_UNHANDLED_ERROR]: μ²˜λ¦¬λ˜μ§€ μ•Šμ€ 였λ₯˜μž…λ‹ˆλ‹€. (ν”Œλž«νΌ "android"λŠ” μœ νš¨ν•œ cordova ν”Œλž«νΌμ΄ μ•„λ‹Œ 것 κ°™μŠ΅λ‹ˆλ‹€. API.jsκ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€. androidλŠ” μ§€μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.)

Cordova Android 8용 λΉŒλ“œλ₯Ό μ‹€ν–‰ν•˜λŠ” λ™μ•ˆ μœ„μ˜ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

UnhandledPromiseRejectionWarning: 였λ₯˜ [ERR_UNHANDLED_ERROR]: μ²˜λ¦¬λ˜μ§€ μ•Šμ€ 였λ₯˜μž…λ‹ˆλ‹€. (ν”Œλž«νΌ "android"λŠ” μœ νš¨ν•œ cordova ν”Œλž«νΌμ΄ μ•„λ‹Œ 것 κ°™μŠ΅λ‹ˆλ‹€. API.jsκ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€. androidλŠ” μ§€μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.)

Cordova Android 8용 λΉŒλ“œλ₯Ό μ‹€ν–‰ν•˜λŠ” λ™μ•ˆ μœ„μ˜ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

λΉŒλ“œ λͺ…령을 λ‹€μ‹œ μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€.

μ•„λ‹ˆμš”, λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

ν”Œλž«νΌμ—μ„œ PlatformApiλ₯Ό λ‘œλ“œν•  수 μ—†μŠ΅λ‹ˆλ‹€. 였λ₯˜: 'properties-parser' λͺ¨λ“ˆμ„ 찾을 수 μ—†μŠ΅λ‹ˆλ‹€.
(λ…Έλ“œ:30131) UnhandledPromiseRejectionWarning: 였λ₯˜ [ERR_UNHANDLED_ERROR]: μ²˜λ¦¬λ˜μ§€ μ•Šμ€ 였λ₯˜μž…λ‹ˆλ‹€. (ν”Œλž«νΌ "android"λŠ” μœ νš¨ν•œ cordova ν”Œλž«νΌμ΄ μ•„λ‹Œ 것 κ°™μŠ΅λ‹ˆλ‹€. API.jsκ°€ λˆ„λ½λ˜μ—ˆμŠ΅λ‹ˆλ‹€. androidλŠ” μ§€μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.)

rsi

λ‚˜λ₯Ό μœ„ν•΄ μΌν•©λ‹ˆλ‹€, κ°μ‚¬ν•©λ‹ˆλ‹€! κ·ΈλŸ¬λ‚˜ "ionic cordova ν”ŒλŸ¬κ·ΈμΈ add cordova-plugin-android-adapter"κ°€ μ‘΄μž¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
이것이 λ‚΄κ°€ ν•œ 일이닀

  1. 이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
  2. 이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ rm cordova-plugin-firebase
  3. 이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
  4. ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidxλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  5. ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  6. 이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μ•ˆλ“œλ‘œμ΄λ“œ μΆ”κ°€
    μ–΄μ¨Œλ“  κ°μ‚¬ν•©λ‹ˆλ‹€!

4μ›” 버전을 μΆ”κ°€ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue

였λ₯˜:
(λ…Έλ“œ:1549) UnhandledPromiseRejectionWarning: CordovaError: λ ˆμ§€μŠ€νŠΈλ¦¬λ₯Ό 톡해 https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue ν”ŒλŸ¬κ·ΈμΈμ„ κ°€μ Έμ˜€μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€.
μ•„λ§ˆλ„ 이것은 μ—°κ²° λ¬Έμ œμ΄κ±°λ‚˜ ν”ŒλŸ¬κ·ΈμΈ 사양이 μ˜¬λ°”λ₯΄μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
μ—°κ²° 및 ν”ŒλŸ¬κ·ΈμΈ 이름/버전/URL을 ν™•μΈν•˜μ‹­μ‹œμ˜€.

ionic cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-firebase 제거
이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-android-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.

이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]

이것은 Firebase ν”ŒλŸ¬κ·ΈμΈμ˜ 이전 버전을 μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— 였늘의 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

λ‚˜μ™€ ν•¨κ»˜ μΌν•˜μ§€ μ•Šμ•˜λ‹€ :(

@ChronouSphere κ°μ‚¬ν•©λ‹ˆλ‹€. 그것은 잘 μž‘λ™ν•©λ‹ˆλ‹€!

https://stackoverflow.com/a/56668983/1077309

@marcosricardo 이것을 μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€: https://stackoverflow.com/a/56668983/1077309

ionic cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-firebase 제거
이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-android-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.

이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]

이것은 Firebase ν”ŒλŸ¬κ·ΈμΈμ˜ 이전 버전을 μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— 였늘의 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

κ°μ‚¬ν•©λ‹ˆλ‹€! @ChronouSphere 단계λ₯Ό λ¨Όμ € μ‹œλ„ν–ˆμ§€λ§Œ μ—¬μ „νžˆ [email protected]에 μžˆμ—ˆκ³  android@8을 μ„€μΉ˜ν–ˆμ„ λ•Œ λΉŒλ“œκ°€ μ„±κ³΅μ μœΌλ‘œ μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

ionic cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-firebase 제거
이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-android-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]
이것은 Firebase ν”ŒλŸ¬κ·ΈμΈμ˜ 이전 버전을 μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— 였늘의 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

κ°μ‚¬ν•©λ‹ˆλ‹€! @ChronouSphere 단계λ₯Ό λ¨Όμ € μ‹œλ„ν–ˆμ§€λ§Œ μ—¬μ „νžˆ [email protected]에 μžˆμ—ˆκ³  android@8을 μ„€μΉ˜ν–ˆμ„ λ•Œ λΉŒλ“œκ°€ μ„±κ³΅μ μœΌλ‘œ μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

λ‚˜λ₯Ό μœ„ν•΄ μž‘λ™ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€ :(, λ‹€λ₯Έ 아이디어?

@herduin μ‹œλ„ν•΄λ³΄μ‹­μ‹œμ˜€ https://github.com/wizpanda/cordova-plugin-firebase-lib/releases

μš°λ¦¬λŠ” 포크λ₯Ό μœ μ§€ν•˜κ³  μš°λ¦¬λŠ” λͺ¨λ‘μ΄ 문제λ₯Ό ν•΄κ²° ν•œ cordova-android 7.x의 및 8.xλ₯Όμ„

이 λͺ…λ ΉμœΌλ‘œ ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase
npm install cordova@9
ionic cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android@8

μ•ˆλ…•ν•˜μ„Έμš”! μ–΄λ–€ 식 μœΌλ‘œλ“ μ΄ 문제λ₯Ό ν•΄κ²°ν•˜λ €κ³ ν•˜μ§€λ§Œ λͺ¨λ“  μ˜λ„μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

BUILD FAILED in 38s

> Task :app:compileReleaseJavaWithJavac FAILED
33 actionable tasks: 33 executed
/Volumes/Datos/GIT/CCASApp/platforms/android/gradlew: Command failed with exit code 1 Error output:
Note: /Volumes/Datos/GIT/CCASApp/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:9: error: cannot find symbol
import android.support.v4.app.NotificationManagerCompat;
                             ^
  symbol:   class NotificationManagerCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:11: error: cannot find symbol
import android.support.v4.app.NotificationCompat;
                             ^
  symbol:   class NotificationCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/FileProvider.java:3: error: package android.support.v4.content does not exist
public class FileProvider extends android.support.v4.content.FileProvider {
                                                            ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:34: error: package android.support.v4.content does not exist
import android.support.v4.content.FileProvider;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:11: error: package android.support.annotation does not exist
import android.support.annotation.RequiresApi;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:121: error: cannot find symbol
    @RequiresApi(Build.VERSION_CODES.LOLLIPOP)
     ^
  symbol:   class RequiresApi
  location: class IonicWebViewEngine.ServerClient
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                    ^
  symbol: class NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                                                                          ^
  symbol: variable NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                              ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                                                                                   ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:153: error: cannot find symbol
                    .setPriority(NotificationCompat.PRIORITY_MAX);
                                 ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:149: error: package NotificationCompat does not exist
                    .setStyle(new NotificationCompat.BigTextStyle().bigText(messageBody))
                                                    ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:148: error: cannot find symbol
                    .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
                                   ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:500: error: cannot find symbol
                    Uri contentUri = FileProvider.getUriForFile(
                                                 ^
  symbol:   method getUriForFile(Context,String,File)
  location: class FileProvider
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
14 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileReleaseJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

이 λͺ…λ ΉμœΌλ‘œ ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase
npm install cordova@9
ionic cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android@8

ν‘œμ‹œλœ λŒ€λ‹΅μ€ λ‚˜λ₯Ό μœ„ν•΄ μΌν•œ κ²ƒμž…λ‹ˆλ‹€.

https://stackoverflow.com/questions/56654226/ionic-cordova-app-stopped-compiling-after-googles-june-17th-firebase-sdk-update

cordova -android < 8.0.0의 경우 [email protected]
cordova-android > 8.0.0의 경우 [email protected]

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.

인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ

  2. ionic cordova build android (μ‹€νŒ¨)

  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:

cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ
  2. ionic cordova build android (μ‹€νŒ¨)
  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

"compile 'com.google. firebase:firebase-auth :+'"λ₯Ό "compile 'com.google. firebase:firebase-auth :16.2.1'"둜 λ³€κ²½ν•˜λŠ” κ²ƒλ§ŒμœΌλ‘œλ„ 잘 μž‘λ™ν•©λ‹ˆλ‹€. 감사 ν•΄μš”.

μ–˜λ“€μ•„, 빨리 μž‘μ—…ν•΄μ€˜μ„œ κ³ λ§ˆμ›Œ. λΉŒλ“œλŠ” μ„±κ³΅ν–ˆμ§€λ§Œ APKκ°€ μƒμ„±λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.
μ–΄λ–€ 아이디어 pls?

μ‹€μ œλ‘œ 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

ν”„λ‘œμ νŠΈ ':app'을 ν‰κ°€ν•˜λŠ” λ™μ•ˆ λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

슀크립트 '/platforms/android/cordova-plugin-firebase/starter-build.gradle'이 μ‘΄μž¬ν•˜μ§€ μ•ŠμœΌλ―€λ‘œ 읽을 수 μ—†μŠ΅λ‹ˆλ‹€.

λ‹€λ₯Έ μ‚¬λžŒμ΄ 같은 였λ₯˜κ°€ μžˆμŠ΅λ‹ˆκΉŒ?

파일이 μ‹€μ œλ‘œ μ‘΄μž¬ν•˜λŠ”μ§€ ν™•μΈν–ˆλŠ”λ° 읽을 수 μ—†λŠ” μ΄μœ λŠ” ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

values.xml의 attr/fontVariationSettings 및 attr/ttcIndex 에 λŒ€ν•΄ μž‘μ—…ν•΄μ•Ό ν•©λ‹ˆλ‹€. 이것은 compileSDK 28κ³Ό 관련이 μžˆμŠ΅λ‹ˆκΉŒ? λ‹€λ₯Έ 였λ₯˜λ₯Ό λ°œμƒμ‹œν‚€λŠ” SDK 28둜 μ—…λ°μ΄νŠΈν•  수 μ—†λŠ” κ²ƒμ²˜λŸΌ λ³΄μ΄μ§€λ§Œ 27을 μœ μ§€ν•˜λ©΄ μ‘΄μž¬ν•˜μ§€ μ•ŠλŠ” values.xmlμ—μ„œ 값을 κ²€μƒ‰ν•©λ‹ˆλ‹€!

Command failed with exit code 1 Error output: <home_path>/.gradle/caches/transforms-1/files-1.1/customtabs-27.1.1.aar/3dce91a2380bf657ee372a601e1fa4bb/res/values/values.xml:7:5-71: AAPT: error: resource android:attr/fontVariationSettings not found.
<home_path>/.gradle/caches/transforms-1/files-1.1/customtabs-27.1.1.aar/3dce91a2380bf657ee372a601e1fa4bb/res/values/values.xml:7:5-71: AAPT: error: resource android:attr/ttcIndex not found.
<project>/platforms/android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:157: error: resource android:attr/fontVariationSettings not found.
<project>/platforms/android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:157: error: resource android:attr/ttcIndex not found. error: failed linking references.

λ‚΄ 잘λͺ»μ΄μ•Ό. λ‚˜λŠ” cordova 8을 κ°€μ§€κ³ μžˆμ—ˆμŠ΅λ‹ˆλ‹€. Cordova CLI둜 μ—…κ·Έλ ˆμ΄λ“œ : 9.0.0 ([email protected]) μˆ˜μ •λ˜μ—ˆμ§€λ§Œ Firebaseκ°€ ν˜ΈμΆœλ˜λŠ” 방식이 λ³€κ²½λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

λ‚΄κ°€ λ­ν•˜λŠ” 거지
'@ionic-native/firebase'μ—μ„œ { Firebase } κ°€μ Έμ˜€κΈ°
λ˜λŠ”
'firebase'μ—μ„œ { Firebase } κ°€μ Έμ˜€κΈ°

ν•˜μ§€λ§Œ λ‹€μŒκ³Ό 같은 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.
'typeof' μœ ν˜•μ— 'initializeApp' 속성이 μ—†μŠ΅λ‹ˆλ‹€.
firebase.initializeApp(ꡬ성);

μ–΄λ–€ 아이디어?

@accerpcom import { Firebase } from 'firebase' μž‘μ„±ν•  λ•Œ 'firebase' λŠ” μ‹€μ œλ‘œ Google Firebase의 곡식 JS λΌμ΄λΈŒλŸ¬λ¦¬μž…λ‹ˆλ‹€.

@ionic-native/firebase λŠ” 이 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈμ˜ JS μ½”λ“œμ— λŒ€ν•œ Typescript λž˜νΌμž…λ‹ˆλ‹€. κ·Έλž˜μ„œ 당신은 두 가지λ₯Ό μ„žκ³  μžˆμŠ΅λ‹ˆλ‹€.

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ
  2. ionic cordova build android (μ‹€νŒ¨)
  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

ν˜•λ‹˜ 덕뢄에 2μΌλ™μ•ˆ 쑸지 μ•Šκ³  건강을 κ΅¬ν–ˆμŠ΅λ‹ˆλ‹€...

μ„œλͺ…λœ λ²ˆλ“€μ„ μƒμ„±ν•˜λ €λ©΄ Android gradle ν”ŒλŸ¬κ·ΈμΈμ„ 버전 3.2.0 μ΄μƒμœΌλ‘œ μ—…λ°μ΄νŠΈν•΄μ•Ό ν•©λ‹ˆλ‹€.
또 문제!!!

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ
  2. ionic cordova build android (μ‹€νŒ¨)
  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

맀우 κ°μ‚¬ν•©λ‹ˆλ‹€ !!! 당신이 λ‚˜λ₯Ό κ΅¬ν•΄μ£Όμ—ˆμŠ΅λ‹ˆλ‹€!

이것을 μ‹œλ„ ν•˜μ‹­μ‹œμ˜€ https://github.com/wizpanda/cordova-plugin-firebase-lib/releases

μ‰Ώ! λ‚˜λ₯Ό μœ„ν•΄ 일해!

λ‚˜λŠ” 같은 λ¬Έμ œκ°€μžˆλ‹€....

https://github.com/arnesson/cordova-plugin-firebase/issues/1084#issuecomment -503726618
감사 ν•΄μš”.
당신이 λ‚˜λ₯Ό κ΅¬ν•΄μ£Όμ—ˆμŠ΅λ‹ˆλ‹€

μ•ˆλ…•ν•˜μ„Έμš”! μ–΄λ–€ 식 μœΌλ‘œλ“ μ΄ 문제λ₯Ό ν•΄κ²°ν•˜λ €κ³ ν•˜μ§€λ§Œ λͺ¨λ“  μ˜λ„μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

BUILD FAILED in 38s

> Task :app:compileReleaseJavaWithJavac FAILED
33 actionable tasks: 33 executed
/Volumes/Datos/GIT/CCASApp/platforms/android/gradlew: Command failed with exit code 1 Error output:
Note: /Volumes/Datos/GIT/CCASApp/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:9: error: cannot find symbol
import android.support.v4.app.NotificationManagerCompat;
                             ^
  symbol:   class NotificationManagerCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:11: error: cannot find symbol
import android.support.v4.app.NotificationCompat;
                             ^
  symbol:   class NotificationCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/FileProvider.java:3: error: package android.support.v4.content does not exist
public class FileProvider extends android.support.v4.content.FileProvider {
                                                            ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:34: error: package android.support.v4.content does not exist
import android.support.v4.content.FileProvider;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:11: error: package android.support.annotation does not exist
import android.support.annotation.RequiresApi;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:121: error: cannot find symbol
    @RequiresApi(Build.VERSION_CODES.LOLLIPOP)
     ^
  symbol:   class RequiresApi
  location: class IonicWebViewEngine.ServerClient
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                    ^
  symbol: class NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                                                                          ^
  symbol: variable NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                              ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                                                                                   ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:153: error: cannot find symbol
                    .setPriority(NotificationCompat.PRIORITY_MAX);
                                 ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:149: error: package NotificationCompat does not exist
                    .setStyle(new NotificationCompat.BigTextStyle().bigText(messageBody))
                                                    ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:148: error: cannot find symbol
                    .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
                                   ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:500: error: cannot find symbol
                    Uri contentUri = FileProvider.getUriForFile(
                                                 ^
  symbol:   method getUriForFile(Context,String,File)
  location: class FileProvider
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
14 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileReleaseJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

이 λͺ…λ ΉμœΌλ‘œ ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.
ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase
npm install cordova@9
ionic cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android@8

κ³ μΉ  수 μžˆμ—ˆμŠ΅λ‹ˆκΉŒ? λ‹€λ₯Έ μ œμ•ˆλœ μ˜΅μ…˜μ„ λͺ¨λ‘ μ‹œλ„ν•΄λ„ λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”! μ–΄λ–€ 식 μœΌλ‘œλ“ μ΄ 문제λ₯Ό ν•΄κ²°ν•˜λ €κ³ ν•˜μ§€λ§Œ λͺ¨λ“  μ˜λ„μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

BUILD FAILED in 38s

> Task :app:compileReleaseJavaWithJavac FAILED
33 actionable tasks: 33 executed
/Volumes/Datos/GIT/CCASApp/platforms/android/gradlew: Command failed with exit code 1 Error output:
Note: /Volumes/Datos/GIT/CCASApp/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:9: error: cannot find symbol
import android.support.v4.app.NotificationManagerCompat;
                             ^
  symbol:   class NotificationManagerCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:11: error: cannot find symbol
import android.support.v4.app.NotificationCompat;
                             ^
  symbol:   class NotificationCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/FileProvider.java:3: error: package android.support.v4.content does not exist
public class FileProvider extends android.support.v4.content.FileProvider {
                                                            ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:34: error: package android.support.v4.content does not exist
import android.support.v4.content.FileProvider;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:11: error: package android.support.annotation does not exist
import android.support.annotation.RequiresApi;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:121: error: cannot find symbol
    @RequiresApi(Build.VERSION_CODES.LOLLIPOP)
     ^
  symbol:   class RequiresApi
  location: class IonicWebViewEngine.ServerClient
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                    ^
  symbol: class NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                                                                          ^
  symbol: variable NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                              ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                                                                                   ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:153: error: cannot find symbol
                    .setPriority(NotificationCompat.PRIORITY_MAX);
                                 ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:149: error: package NotificationCompat does not exist
                    .setStyle(new NotificationCompat.BigTextStyle().bigText(messageBody))
                                                    ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:148: error: cannot find symbol
                    .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
                                   ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:500: error: cannot find symbol
                    Uri contentUri = FileProvider.getUriForFile(
                                                 ^
  symbol:   method getUriForFile(Context,String,File)
  location: class FileProvider
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
14 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileReleaseJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

이 λͺ…λ ΉμœΌλ‘œ ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.
ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase
npm install cordova@9
ionic cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android@8

κ³ μΉ  수 μžˆμ—ˆμŠ΅λ‹ˆκΉŒ? λ‹€λ₯Έ μ œμ•ˆλœ μ˜΅μ…˜μ„ λͺ¨λ‘ μ‹œλ„ν•΄λ„ λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

예, ν”„λ‘œμ νŠΈ 루트 ν΄λ”μ—μ„œ Cordova 9(npm install cordova@9) 및 android 8(ionic cordova ν”Œλž«νΌ add android@8)에 λŒ€ν•œ μ€‘μš”ν•œ μ—…λ°μ΄νŠΈμž…λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”! μ–΄λ–€ 식 μœΌλ‘œλ“ μ΄ 문제λ₯Ό ν•΄κ²°ν•˜λ €κ³ ν•˜μ§€λ§Œ λͺ¨λ“  μ˜λ„μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

BUILD FAILED in 38s

> Task :app:compileReleaseJavaWithJavac FAILED
33 actionable tasks: 33 executed
/Volumes/Datos/GIT/CCASApp/platforms/android/gradlew: Command failed with exit code 1 Error output:
Note: /Volumes/Datos/GIT/CCASApp/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:9: error: cannot find symbol
import android.support.v4.app.NotificationManagerCompat;
                             ^
  symbol:   class NotificationManagerCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:11: error: cannot find symbol
import android.support.v4.app.NotificationCompat;
                             ^
  symbol:   class NotificationCompat
  location: package android.support.v4.app
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/FileProvider.java:3: error: package android.support.v4.content does not exist
public class FileProvider extends android.support.v4.content.FileProvider {
                                                            ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:34: error: package android.support.v4.content does not exist
import android.support.v4.content.FileProvider;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:11: error: package android.support.annotation does not exist
import android.support.annotation.RequiresApi;
                                 ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/com/ionicframework/cordova/webview/IonicWebViewEngine.java:121: error: cannot find symbol
    @RequiresApi(Build.VERSION_CODES.LOLLIPOP)
     ^
  symbol:   class RequiresApi
  location: class IonicWebViewEngine.ServerClient
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                    ^
  symbol: class NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePlugin.java:358: error: cannot find symbol
                    NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(context);
                                                                          ^
  symbol: variable NotificationManagerCompat
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                              ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:144: error: package NotificationCompat does not exist
            NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this, channelId);
                                                                                   ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:153: error: cannot find symbol
                    .setPriority(NotificationCompat.PRIORITY_MAX);
                                 ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:149: error: package NotificationCompat does not exist
                    .setStyle(new NotificationCompat.BigTextStyle().bigText(messageBody))
                                                    ^
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/org/apache/cordova/firebase/FirebasePluginMessagingService.java:148: error: cannot find symbol
                    .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
                                   ^
  symbol:   variable NotificationCompat
  location: class FirebasePluginMessagingService
/Volumes/Datos/GIT/CCASApp/platforms/android/app/src/main/java/de/sitewaerts/cordova/documentviewer/DocumentViewerPlugin.java:500: error: cannot find symbol
                    Uri contentUri = FileProvider.getUriForFile(
                                                 ^
  symbol:   method getUriForFile(Context,String,File)
  location: class FileProvider
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
14 errors

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileReleaseJavaWithJavac'.
> Compilation failed; see the compiler error output for details.

이 λͺ…λ ΉμœΌλ‘œ ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.
ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase
npm install cordova@9
ionic cordova plugin add https://github.com/dpa99c/cordova-plugin-firebase#GH-1057-April-05-android-build-issue
ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android@8

κ³ μΉ  수 μžˆμ—ˆμŠ΅λ‹ˆκΉŒ? λ‹€λ₯Έ μ œμ•ˆλœ μ˜΅μ…˜μ„ λͺ¨λ‘ μ‹œλ„ν•΄λ„ λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš”! λ‹€μŒ λ‹¨κ³„λ‘œ 였λ₯˜λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

cordova: 8.0.0
node: 8.11.0
ionic: 3.20.0
android: 8.0.0
targetBuild: 28

첫 번째

ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase

node_modules 폴더 제거

μˆœμ„œλŒ€λ‘œ

npm i
cordova plugin add cordova-plugin-firebase-lib
cordova plugin add cordova-plugin-androidx
cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android<strong i="13">@8</strong>

100% ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ”μ΄ 문제둜 2 일 전에 거기에 μžˆμ—ˆκ³  이것이 ν•΄κ²°μ±…μ΄μ—ˆμŠ΅λ‹ˆλ‹€.
APP λΉŒλ“œκ°€ 100% μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€. APK도 μ„±κ³΅μ μœΌλ‘œ μ‹€ν–‰λ©λ‹ˆλ‹€.

도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€

볡근

rsi

λ‚˜λ₯Ό μœ„ν•΄ μΌν•©λ‹ˆλ‹€, κ°μ‚¬ν•©λ‹ˆλ‹€! κ·ΈλŸ¬λ‚˜ "ionic cordova ν”ŒλŸ¬κ·ΈμΈ add cordova-plugin-android-adapter"κ°€ μ‘΄μž¬ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.
이것이 λ‚΄κ°€ ν•œ 일이닀

  1. 이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
  2. 이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ rm cordova-plugin-firebase
  3. 이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
  4. ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidxλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  5. ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
  6. 이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μ•ˆλ“œλ‘œμ΄λ“œ μΆ”κ°€
    μ–΄μ¨Œλ“  κ°μ‚¬ν•©λ‹ˆλ‹€!

이 λͺ¨λ“  단계λ₯Ό λ”°λžμ§€λ§Œ μ—¬μ „νžˆ λΉŒλ“œλ₯Ό 생성/μ‹€ν–‰ν•  수 μ—†μŠ΅λ‹ˆλ‹€. λ‹€μŒ 였λ₯˜μ™€ ν•¨κ»˜ λΉŒλ“œ μ‹€νŒ¨:
Task :app:compileDebugJavaWithJavac FAILED app\platforms\android\app\src\main\java\com\ionicframework\cordova\webview\IonicWebViewEngine.java:11: error: package android.support.annotation does not exist import android.support.annotation.RequiresApi; ^ app\platforms\android\app\src\main\java\org\apache\cordova\firebase\FirebasePlugin.java:9: error: cannot find symbol import android.support.v4.app.NotificationManagerCompat;

android@8 이 μžˆλŠ” μ½”λ₯΄λ„λ°” 9κ°€
λ‚˜λŠ” μ§€λ‚œ λ©°μΉ λΆ€ν„° 그것에 λΆ™μ–΄ 있고 이것을 κ³ μΉ  ν•„μš”κ°€ μžˆμŠ΅λ‹ˆλ‹€. λͺ¨λ“  μ œμ•ˆ.

μ•ˆλ…•ν•˜μ„Έμš”! λ‹€μŒ λ‹¨κ³„λ‘œ 였λ₯˜λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

cordova: 8.0.0
node: 8.11.0
ionic: 3.20.0
android: 8.0.0
targetBuild: 28

첫 번째

ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase

node_modules 폴더 제거

μˆœμ„œλŒ€λ‘œ

npm i
cordova plugin add cordova-plugin-firebase-lib
cordova plugin add cordova-plugin-androidx
cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android<strong i="14">@8</strong>

100% ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ”μ΄ 문제둜 2 일 전에 거기에 μžˆμ—ˆκ³  이것이 ν•΄κ²°μ±…μ΄μ—ˆμŠ΅λ‹ˆλ‹€.
APP λΉŒλ“œκ°€ 100% μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€. APK도 μ„±κ³΅μ μœΌλ‘œ μ‹€ν–‰λ©λ‹ˆλ‹€.

도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€

볡근

@viniciusbarbosa λ‹˜ , μ†”λ£¨μ…˜μ„ μ‚¬μš©ν•˜κ³  platform/android/cordova-plugin-intercom/app-intercom.gradle μ•„λž˜μ— λ‹€μŒμ΄ μžˆλŠ” Intercom ν”ŒλŸ¬κ·ΈμΈ ꡬ성을 μ•½κ°„ μ‘°μ •ν•©λ‹ˆλ‹€.
`
쒅속성 {

    // classpath 'com.android.tools.build:gradle:2.3.+'

    if (pushType == 'fcm') {

        // classpath 'com.google.gms:google-services:3.2.0'

    }
}

`
주석을 달고 λ‚˜λ©΄ λΉŒλ“œλ₯Ό μ„±κ³΅μ μœΌλ‘œ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ κΈ°κΈ°μ—μ„œ μ‹€ν–‰ν•˜λ©΄ 였λ₯˜ 없이 μ‹œμž‘ν•˜κΈ° 전에 앱이 μΆ©λŒν•©λ‹ˆλ‹€. 무슨 일이 μΌμ–΄λ‚˜κ³  μžˆμŠ΅λ‹ˆκΉŒ?

μ•ˆλ…•ν•˜μ„Έμš”, @JeetuChoudharyμž…λ‹ˆλ‹€!

λ‹€μŒμ„ μ‹€ν–‰ν–ˆμ„ λ•Œ: ionic cordova platform add android @ 8, λͺ¨λ“  ν”ŒλŸ¬κ·ΈμΈμ΄ μ„±κ³΅μ μœΌλ‘œ μ„€μΉ˜λ˜μ—ˆμŠ΅λ‹ˆκΉŒ?

androidx-adapter ν”ŒλŸ¬κ·ΈμΈμ€ λ‹€λ₯Έ ν”ŒλŸ¬κ·ΈμΈμ˜ λͺ¨λ“  ν˜Έν™˜μ„± λ¬Έμ œμ™€ λ‚΄λΆ€ 쒅속성을 ν•΄κ²°ν•΄μ•Ό ν•©λ‹ˆλ‹€.

ν…ŒμŠ€νŠΈν•˜λ €λ©΄ package.jsonμ—μ„œ cordova-plugin-intercom ν”ŒλŸ¬κ·ΈμΈμ„ μ œκ±°ν•˜κ³  λͺ¨λ“  단계λ₯Ό λ°˜λ³΅ν•œ λ‹€μŒ λΉŒλ“œκ°€ μ„±κ³΅ν•˜λŠ”μ§€ ν™•μΈν•©λ‹ˆλ‹€.

λ‚˜λŠ” cordova-plugin-intercom을 μ‚΄νŽ΄λ³΄κ³  ionic 1 및 2와 ν˜Έν™˜λœλ‹€κ³  μΈμš©ν•©λ‹ˆλ‹€. ionic의 버전은 λ¬΄μ—‡μž…λ‹ˆκΉŒ? 그리고 μ–΄λ–€ λ²„μ „μ˜ ν”ŒλŸ¬κ·ΈμΈμ„ μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆκΉŒ?

볡근

이것은 λ‚˜λ₯Ό μœ„ν•΄ μΌν•©λ‹ˆλ‹€.
cordova-plugin-firebase -μ €μž₯
이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μ•ˆλ“œλ‘œμ΄λ“œ 제거
ν”Œλž«νΌ/μ•ˆλ“œλ‘œμ΄λ“œ/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android. gms:play-services-tagmanager :16.0.8
cordova.system.library.4=com.google. firebase:firebase -core :16.0.8
cordova.system.library.5=com.google. firebase:firebase -messaging :17.5.0
cordova.system.library.6=com.google. firebase:firebase-config :16.4.1
cordova.system.library.7=com.google. firebase:firebase-perf :16.2.4

ν”Œλž«νΌ/Android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)

컴파일 "com.google.android.gms :play-services-tagmanager :16.0.8"
"com.google. firebase:firebase -core :16.0.8" 컴파일
"com.google. firebase:firebase -messaging :17.5.0" 컴파일
"com.google. firebase:firebase-config :16.4.1" 컴파일
컴파일 "com.google. firebase:firebase-perf :16.2.4

μ—…λ°μ΄νŠΈ ν”Œλž«νΌ/android/cordova-plugin-firebase/cloud-build.gradle(μ’…μ†μ„±μ—μ„œ)
컴파일 'com.google. firebase:firebase-auth :16.2.1'

cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-intercom μΆ”κ°€

cordova/platforms/android/cordova-plugin-intercom/movilidapp-intercom.gradle μ—…λ°μ΄νŠΈ(~ln 66):
ν”ŒλŸ¬κ·ΈμΈ 적용: 'com.google.gms.google-services'

μ•ˆλ…•ν•˜μ„Έμš”! λ‹€μŒ λ‹¨κ³„λ‘œ 였λ₯˜λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

cordova: 8.0.0
node: 8.11.0
ionic: 3.20.0
android: 8.0.0
targetBuild: 28

첫 번째

ionic cordova platform rm android
ionic cordova plugin rm cordova-plugin-firebase

node_modules 폴더 제거
μˆœμ„œλŒ€λ‘œ

npm i
cordova plugin add cordova-plugin-firebase-lib
cordova plugin add cordova-plugin-androidx
cordova plugin add cordova-plugin-androidx-adapter
ionic cordova platform add android<strong i="18">@8</strong>

100% ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ”μ΄ 문제둜 2 일 전에 거기에 μžˆμ—ˆκ³  이것이 ν•΄κ²°μ±…μ΄μ—ˆμŠ΅λ‹ˆλ‹€.
APP λΉŒλ“œκ°€ 100% μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€. APK도 μ„±κ³΅μ μœΌλ‘œ μ‹€ν–‰λ©λ‹ˆλ‹€.
도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€

볡근

@viniciusbarbosa λ‹˜ , μ†”λ£¨μ…˜μ„ μ‚¬μš©ν•˜κ³  platform/android/cordova-plugin-intercom/app-intercom.gradle μ•„λž˜μ— λ‹€μŒμ΄ μžˆλŠ” Intercom ν”ŒλŸ¬κ·ΈμΈ ꡬ성을 μ•½κ°„ μ‘°μ •ν•©λ‹ˆλ‹€.
`
쒅속성 {

    // classpath 'com.android.tools.build:gradle:2.3.+'

    if (pushType == 'fcm') {

        // classpath 'com.google.gms:google-services:3.2.0'

    }
}

`
주석을 달고 λ‚˜λ©΄ λΉŒλ“œλ₯Ό μ„±κ³΅μ μœΌλ‘œ λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ κΈ°κΈ°μ—μ„œ μ‹€ν–‰ν•˜λ©΄ 였λ₯˜ 없이 μ‹œμž‘ν•˜κΈ° 전에 앱이 μΆ©λŒν•©λ‹ˆλ‹€. 무슨 일이 μΌμ–΄λ‚˜κ³  μžˆμŠ΅λ‹ˆκΉŒ?

Firebase+인터콀
λ‚˜λ₯Ό μœ„ν•œ 이 μž‘ν’ˆ!!
μ½”λ₯΄λ„λ°”: 8.0.0
λ…Έλ“œ: 10.15.1
μ•ˆλ“œλ‘œμ΄λ“œ: 7.1.4
νƒ€κ²Ÿ λΉŒλ“œ: 27

cordova-plugin-firebase -μ €μž₯

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.
μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μ•ˆλ“œλ‘œμ΄λ“œ 제거

ν”Œλž«νΌ/μ•ˆλ“œλ‘œμ΄λ“œ/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android. gms:play-services-tagmanager :16.0.8
cordova.system.library.4=com.google. firebase:firebase -core :16.0.8
cordova.system.library.5=com.google. firebase:firebase -messaging :17.5.0
cordova.system.library.6=com.google. firebase:firebase-config :16.4.1
cordova.system.library.7=com.google. firebase:firebase-perf :16.2.4

ν”Œλž«νΌ/Android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
컴파일 "com.google.android.gms :play-services-tagmanager :16.0.8"
"com.google. firebase:firebase -core :16.0.8" 컴파일
"com.google. firebase:firebase -messaging :17.5.0" 컴파일
"com.google. firebase:firebase-config :16.4.1" 컴파일
컴파일 "com.google. firebase:firebase-perf :16.2.4

μ—…λ°μ΄νŠΈ ν”Œλž«νΌ/android/cordova-plugin-firebase/cloud-build.gradle(μ’…μ†μ„±μ—μ„œ)
컴파일 'com.google. firebase:firebase-auth :16.2.1'

cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-intercom μΆ”κ°€

μ—…λ°μ΄νŠΈ cordova/platforms/android/cordova-plugin-intercom/movilidapp-intercom.gradle (~ln 66):
ν”ŒλŸ¬κ·ΈμΈ 적용: 'com.google.gms.google-services'

APP λΉŒλ“œκ°€ 100% μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€. APK도 μ„±κ³΅μ μœΌλ‘œ μ‹€ν–‰λ©λ‹ˆλ‹€.

@viniciusbarbosa [email protected] κ³Ό cordova9κ°€ μžˆμŠ΅λ‹ˆλ‹€.
예, λͺ¨λ“  ν”ŒλŸ¬κ·ΈμΈμ΄ μ„±κ³΅μ μœΌλ‘œ μ„€μΉ˜λœ λ‹€μŒ ν”Œλž«νΌ, ν”ŒλŸ¬κ·ΈμΈ, node_module 및 package-lock.json을 μ œκ±°ν–ˆμŠ΅λ‹ˆλ‹€. 그런 λ‹€μŒ μ œκ³΅ν•œ 단계λ₯Ό λ°˜λ³΅ν•©λ‹ˆλ‹€.

"@ionic-native/intercom": "^5.8.0"κ³Ό ν•¨κ»˜ "cordova-plugin-intercom": "7.0.0"이 μžˆμŠ΅λ‹ˆλ‹€. IOSλŠ” λΉŒλ“œλ₯Ό μƒμ„±ν•˜κΈ° μœ„ν•΄ μ΅œμ‹  λ²„μ „μ˜ 인터콀이 ν•„μš”ν•©λ‹ˆλ‹€. 그렇지 μ•ŠμœΌλ©΄ λ¬Έμ œκ°€ λ°œμƒν•˜κ³  Ionic 3κ°€ μžˆλŠ” IOSμ—μ„œ 잘 μž‘λ™ν•©λ‹ˆλ‹€. λ˜ν•œ Ionic 3μ—μ„œ android 버전 > [email protected]인 경우 ionic 3μ—μ„œ androidμ—μ„œ μž‘λ™ν•©λ‹ˆλ‹€. I λ‹€λ₯Έ ν”„λ‘œμ νŠΈ 쀑 ν•˜λ‚˜μ— μžˆμ§€λ§Œ Firebase ν”ŒλŸ¬κ·ΈμΈμ΄ μ—†μœΌλ―€λ‘œ μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€.

package.jsonμ—μ„œ cordova-plugin-intercom ν”ŒλŸ¬κ·ΈμΈμ„ μ œκ±°ν•œ ν›„ ν…ŒμŠ€νŠΈλ„ ν•˜κ³ ,

이 Firebase ν”ŒλŸ¬κ·ΈμΈμ€ λ‚΄ 두 ν”„λ‘œμ νŠΈλ₯Ό κΉ¨κ³  λ‚˜λ₯Ό νž˜λ“€κ²Œ λ§Œλ“­λ‹ˆλ‹€. κ·€ν•˜μ˜ 단계λ₯Ό μ‚¬μš©ν•˜μ—¬ λ‹€λ₯Έ ν”„λ‘œμ νŠΈ 쀑 ν•˜λ‚˜μ—μ„œ μ—¬μ „νžˆ λΉŒλ“œλ₯Ό μƒμ„±ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 그리고 κ·Έ ν”„λ‘œμ νŠΈμ—λŠ” 인터콀이 μ—†μ§€λ§Œ 뢄석이 μžˆμŠ΅λ‹ˆλ‹€.
ν•΄λ‹Ή ν”„λ‘œμ νŠΈμ—μ„œ λΉŒλ“œν•˜λŠ” λ™μ•ˆ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

`8초 λ§Œμ— λΉŒλ“œ μ‹€νŒ¨
/platforms/android/gradlew: μ’…λ£Œ μ½”λ“œ 1 였λ₯˜ 좜λ ₯으둜 λͺ…λ Ή μ‹€νŒ¨:

μ°Έκ³ : /platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.javaλŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” APIλ₯Ό μ‚¬μš©ν•˜κ±°λ‚˜ μž¬μ •μ˜ν•©λ‹ˆλ‹€.

μ°Έκ³ : μžμ„Έν•œ λ‚΄μš©μ€ - Xlint:deprecation 을 λ‹€μ‹œ μ»΄νŒŒμΌν•˜μ‹­μ‹œμ˜€.
/platforms/android/app/src/main/AndroidManifest.xml xml:36 :5-74 였λ₯˜:
sdk:minSdkVersion 16은 라이브러리 [:CordovaLib]에 μ„ μ–Έλœ 버전 19보닀 μž‘μ„ 수 μ—†μŠ΅λ‹ˆλ‹€.

/platforms/android/CordovaLib/build/intermediates/library_manifest/debug/AndroidManifest.xml λΌμ΄λΈŒλŸ¬λ¦¬κ°€ 16μ—μ„œ μ‚¬μš©ν•  수 μ—†λŠ” APIλ₯Ό μ‚¬μš©ν•  수 μžˆμœΌλ―€λ‘œ
μ œμ•ˆ: minSdkκ°€ μ΅œλŒ€ 16인 ν˜Έν™˜ κ°€λŠ₯ν•œ 라이브러리λ₯Ό μ‚¬μš©ν•˜μ‹­μ‹œμ˜€.
λ˜λŠ” 이 ν”„λ‘œμ νŠΈμ˜ minSdk 버전을 19 μ΄μƒμœΌλ‘œ λŠ˜λ¦¬μ‹­μ‹œμ˜€.
λ˜λŠ” tools:overrideLibrary= "org.apache.cordova"λ₯Ό μ‚¬μš©ν•˜μ—¬ κ°•μ œ μ‚¬μš©(λŸ°νƒ€μž„ 였λ₯˜λ‘œ μ΄μ–΄μ§ˆ 수 있음)`
android/app/build.gradle에 minSdk 버전을 μΆ”κ°€ν–ˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ 운이 μ—†λ‹€

κ·€ν•˜μ˜ μ‹œκ°„κ³Ό 도움에 κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€

μ„€λͺ…λœ 단계λ₯Ό λ‹€μ‹œ μ‹œλ„ν•˜μ§€λ§Œ Android 버전이 7.1.4인 경우 λ‹€μŒμ„ μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. cordova plugin add [email protected]

μžμ„Έν•œ λ‚΄μš©μ€ https://github.com/wizpanda/cordova-plugin-firebase-libλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

무슨 일이 μΌμ–΄λ‚˜λŠ”μ§€ 말해봐

@viniciusbarbosa λΉŒλ“œλŠ” μ„±κ³΅ν–ˆμ§€λ§Œ Android SDKλŠ” μ•„λž˜ λ©”μ‹œμ§€μ™€ ν•¨κ»˜ μ‹€νŒ¨ν•©λ‹ˆλ‹€.

minsdkversion을 μ΄λ™ν•˜μ—¬ 파일 λΉŒλ“œ 및 ν”„λ‘œμ νŠΈ 동기화

@nsksaisaravana μ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€μ—μ„œ μ‹€ν–‰ν•˜λ©΄ κ·Έλ ‡κ²Œ ν•˜λΌκ³  ν•©λ‹ˆλ‹€. λͺ…λ Ή 쀄을 톡해 μ‹€ν–‰ν•˜λ©΄ μž‘λ™ν•©λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ‹­λ‹ˆκΉŒ....

14초 λ§Œμ— ꡬ좕 μ‹€νŒ¨
였λ₯˜: appfolder/platforms/android/gradlew: μ’…λ£Œ μ½”λ“œ 1 였λ₯˜ 좜λ ₯으둜 λͺ…λ Ή μ‹€νŒ¨:
μ°Έκ³ : /appfolder/platforms/android/CordovaLib/src/org/apache/cordova/engine/SystemCookieManager.javaλŠ” 더 이상 μ‚¬μš©λ˜μ§€ μ•ŠλŠ” APIλ₯Ό μ‚¬μš©ν•˜κ±°λ‚˜ μž¬μ •μ˜ν•©λ‹ˆλ‹€.
μ°Έκ³ : μžμ„Έν•œ λ‚΄μš©μ€ - Xlint:deprecation 을 λ‹€μ‹œ μ»΄νŒŒμΌν•˜μ‹­μ‹œμ˜€.

FAILURE: μ˜ˆμ™Έμ™€ ν•¨κ»˜ λΉŒλ“œμ— μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

  • 무엇이 잘λͺ»λ˜μ—ˆλŠ”지:
    ꡬ성 ':app:releaseCompileClasspath'에 λŒ€ν•œ λͺ¨λ“  νŒŒμΌμ„ 확인할 수 μ—†μŠ΅λ‹ˆλ‹€.
    > λ³€ν™˜ JetifyTransform을 μ‚¬μš©ν•˜μ—¬ {artifactType=processed-jar} 속성과 μΌμΉ˜ν•˜λ„λ‘ 'libSecureLauncher.jar' νŒŒμΌμ„ λ³€ν™˜ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€.
    > Jetifierλ₯Ό μ‚¬μš©ν•˜μ—¬ '/Users/ci/Desktop/project/KRX_MTS/platforms/android/app/libs/libSecureLauncher.jar'을 λ³€ν™˜ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€. 이유: nullμž…λ‹ˆλ‹€. (μžμ„Έν•œ λ‚΄μš©μ€ --stacktrace둜 μ‹€ν–‰ν•˜μ‹­μ‹œμ˜€.)

μ•„λž˜ μ‹œμŠ€ν…œ 정보..

ionic1 ν”„λ ˆμž„ μ›Œν¬λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

μ‹œλ„ν–ˆλ‹€
μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ 팸
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ Firebase
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ firebasex
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ firebasex-lib
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ androidx
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ androidx-adapter

..

λ‚˜λŠ” 거의 githubμ—μ„œ μ†”λ£¨μ…˜μ„ μ‹œλ„ν–ˆμ§€λ§Œ μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.

λ„μ™€μ£Όμ„Έμš”

μ•ˆλ…•ν•˜μ„Έμš” @toFreshMilkμž…λ‹ˆλ‹€.

3개의 ν”ŒλŸ¬κ·ΈμΈμ„ λ™μ‹œμ— μ‚¬μš©ν•˜λ©΄ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ Firebase
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ firebasex
μ½”λ₯΄λ„λ°” firebasex-lib ν”ŒλŸ¬κ·ΈμΈ

λ‚΄κ°€ μ„±κ³΅ν•œ μ‹œλ„λŠ” cordova ν”ŒλŸ¬κ·ΈμΈ firebasex-libλ₯Ό μ‚¬μš©ν•œ κ²ƒμž…λ‹ˆλ‹€.
여기에 μ„€λͺ…λœ μˆœμ„œλ₯Ό λ”°λ₯΄λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€(https://github.com/arnesson/cordova-plugin-firebase/issues/1084#issuecomment-505420901).
μžμ„Έν•œ λ‚΄μš©μ€ μ—¬κΈ°(https://github.com/wizpanda/cordova-plugin-firebase-lib)λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

MinSdk = 19 및 TargetSdk = 28
μ½”λ₯΄λ„λ°”: 8.0.0
λ…Έλ“œ: 8.11.0
이온: 3.20.0
μ•ˆλ“œλ‘œμ΄λ“œ: 8.0.0
νƒ€κ²Ÿ λΉŒλ“œ: 28

도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€

볡근

minsdk버전

μ•ˆλ…•ν•˜μ„Έμš”, @nsksaisaravanaμž…λ‹ˆλ‹€!
MinSdk = 19 e TargetSdk = 28.

μ΄κ²ƒμœΌλ‘œ μ‹œλ„

typescriptλ₯Ό μ‚¬μš©ν•˜μ—¬ ionic2μ—μ„œ 이 라이브러리(cordova-plugin-firebasex-lib)λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? 이 μˆ˜μž…ν’ˆμ€ μ–΄λ–»κ²Œ μƒκ²ΌμŠ΅λ‹ˆκΉŒ? 질문 μ£„μ†‘ν•©λ‹ˆλ‹€. πŸ˜•

ionic cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-firebase 제거
이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€ https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-android-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.

이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]

이것은 Firebase ν”ŒλŸ¬κ·ΈμΈμ˜ 이전 버전을 μ‚¬μš©ν•˜κΈ° λ•Œλ¬Έμ— 였늘의 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

ionic2λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆκΉŒ? js ν”ŒλŸ¬κ·ΈμΈμ„ typscript둜 κ°€μ Έμ˜€λŠ” 방법은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?

μ•ˆλ…•ν•˜μ„Έμš” @toFreshMilkμž…λ‹ˆλ‹€.

3개의 ν”ŒλŸ¬κ·ΈμΈμ„ λ™μ‹œμ— μ‚¬μš©ν•˜λ©΄ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ Firebase
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ firebasex
μ½”λ₯΄λ„λ°” firebasex-lib ν”ŒλŸ¬κ·ΈμΈ

λ‚΄κ°€ μ„±κ³΅ν•œ μ‹œλ„λŠ” cordova ν”ŒλŸ¬κ·ΈμΈ firebasex-libλ₯Ό μ‚¬μš©ν•œ κ²ƒμž…λ‹ˆλ‹€.
여기에 μ„€λͺ…λœ μˆœμ„œλ₯Ό λ”°λ₯΄λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€( #1084 (comment) ),
μžμ„Έν•œ λ‚΄μš©μ€ μ—¬κΈ°(https://github.com/wizpanda/cordova-plugin-firebase-lib)λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

MinSdk = 19 및 TargetSdk = 28
μ½”λ₯΄λ„λ°”: 8.0.0
λ…Έλ“œ: 8.11.0
이온: 3.20.0
μ•ˆλ“œλ‘œμ΄λ“œ: 8.0.0
νƒ€κ²Ÿ λΉŒλ“œ: 28

도움이 λ˜μ—ˆκΈ°λ₯Ό λ°”λžλ‹ˆλ‹€

볡근

κ°μ‚¬ν•˜λ‹€.

ν•˜μ§€λ§Œ λ‚˜λŠ” 이미 λ‹Ήμ‹ μ˜ 쑰언을 μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€.

κ·Έλƒ₯ ionic1을 μ‚¬μš©ν•©λ‹ˆλ‹€.

λ˜ν•œ,

3개의 ν”ŒλŸ¬κ·ΈμΈμ„ λ™μ‹œμ— μ‚¬μš©ν•˜λ©΄ λ¬Έμ œκ°€ λ°œμƒν•©λ‹ˆλ‹€.
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ Firebase
μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ firebasex
μ½”λ₯΄λ„λ°” firebasex-lib ν”ŒλŸ¬κ·ΈμΈ

λ‚˜λŠ”μ΄ ν”ŒλŸ¬κ·ΈμΈμ„ 각각 μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€. μ•„λ‹ˆ ν•¨κ»˜.

λ‚˜μ˜ κ²½μš°μ—λŠ”,
λ‚˜λŠ” cordova μ•±μœΌλ‘œ testapp을 λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€.
그런 λ‹€μŒ μ€€λΉ„ν•˜μ‹­μ‹œμ˜€ ( firebase-lib, androidx, androidx μ–΄λŒ‘ν„° .. ).

ν•˜μ§€λ§Œ λΉŒλ“œ μ‹€νŒ¨...

뭐..? 무슨 문제?

@toFreshMilk μ½”λ₯΄λ„λ°” 정보λ₯Ό λΆ™μ—¬λ„£μœΌμ„Έμš”.

typescriptλ₯Ό μ‚¬μš©ν•˜μ—¬ ionic2μ—μ„œ 이 라이브러리(cordova-plugin-firebasex-lib)λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆκΉŒ? 이 μˆ˜μž…ν’ˆμ€ μ–΄λ–»κ²Œ μƒκ²ΌμŠ΅λ‹ˆκΉŒ? 질문 μ£„μ†‘ν•©λ‹ˆλ‹€. πŸ˜•

예, 이것을 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. Cordova ν™˜κ²½ 버전 을

μ €λŠ” 이 λΆ€λΆ„μ—μ„œ 어렀움을 κ²ͺκ³  μžˆμŠ΅λ‹ˆλ‹€.

Ionic:

   Ionic CLI                     : 5.2.1 (C:\Users\DELL\AppData\Roaming\npm\node_modules\ionic)
   Ionic Framework               : @ionic/angular 4.6.0
   @angular-devkit/build-angular : 0.13.9
   @angular-devkit/schematics    : 7.3.9
   @angular/cli                  : 7.3.9
   @ionic/angular-toolkit        : 1.5.1

Cordova:

   Cordova CLI       : 9.0.0 ([email protected])
   Cordova Platforms : android 8.0.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 4.1.1, (and 5 other plugins)

Utility:

   cordova-res : 0.5.1
   native-run  : 0.2.7

System:

 (C:\Program Files (x86)\Android\android-sdk)
   NodeJS            : v11.2.0 (C:\Program Files\nodejs\node.exe)
   npm               : 6.4.1
   OS                : Windows 10

  • μ•± λͺ¨λ“ˆ
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';

import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';

import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';

import { Firebase } from 'cordova-plugin-firebase-lib/www/firebase';

@NgModule({
  declarations: [AppComponent],
  entryComponents: [],
  imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],
  providers: [
    StatusBar,
    SplashScreen,
    Firebase,
    { provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
  ],
  bootstrap: [AppComponent]
})
export class AppModule {}
  • μ•± ꡬ성 μš”μ†Œ
import { Component } from '@angular/core';

import { Platform } from '@ionic/angular';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';

import { Firebase } from 'cordova-plugin-firebase-lib/www/firebase';

@Component({
  selector: 'app-root',
  templateUrl: 'app.component.html'
})
export class AppComponent {
  constructor(
    private platform: Platform,
    private splashScreen: SplashScreen,
    private statusBar: StatusBar,
    private firebase: Firebase
  ) {
    this.initializeApp();
  }

  initializeApp() {
    this.platform.ready().then(() => {
      this.statusBar.styleDefault();
      this.splashScreen.hide();

      this.initFirebase();

    });
  }

  initFirebase() {
      this.firebase.getToken(function(token) {
        alert(`The token is ${token}`)
      }, function(error) {
        alert('Error getting token: ' + JSON.stringify(error))
      });
  }

}

./node_modules/cordova-plugin-firebase-lib/www/firebase.js의 였λ₯˜λͺ¨λ“ˆμ„ 찾을 수 μ—†μŒ: 였λ₯˜: 'C:\Users\DELL\source\repos\myproject\node_modules\cordova-plugin-firebase-lib\www'의 'cordova/exec'λ₯Ό 확인할 수 μ—†μŠ΅λ‹ˆλ‹€.

μ•ˆλ…•ν•˜μ„Έμš” @leodianoμž…λ‹ˆλ‹€!

cordova-plugin-firebase ν”ŒλŸ¬κ·ΈμΈμ„ cordova-plugin-firebase-lib둜 κ΅μ²΄ν•˜κ³  androidx 및 androidx-adapter도 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.
이 μ˜κ²¬μ— λŒ€ν•œ λ‚΄ 지침을 λ”°λ₯΄μ‹­μ‹œμ˜€: https://github.com/arnesson/cordova-plugin-firebase/issues/1084#issuecomment-505420901)

Android Android 버전에 따라 μ„€μΉ˜ν•΄μ•Ό ν•˜λŠ” firebase-lib 버전을 ν™•μΈν•˜μ„Έμš”. μ—¬κΈ°λ₯Ό λ”°λ₯΄μ‹­μ‹œμ˜€: https://github.com/wizpanda/cordova-plugin-firebase-lib

λ‚΄κ°€ μΈμš©ν•œ μ„€λͺ…에 μ„€λͺ…λœ 단계λ₯Ό μ •ν™•ν•˜κ²Œ μ‹œλ„ν•˜λ©΄ 성곡할 κ²ƒμž…λ‹ˆλ‹€. Google μ—…λ°μ΄νŠΈ ν›„ 2일 λ™μ•ˆ 이 μž‘μ—…μ„ μˆ˜ν–‰ν–ˆμœΌλ©° λ§ˆμΉ¨λ‚΄ 이 μ†”λ£¨μ…˜μ΄ μ•ˆμ •μ μ΄λΌλŠ” 것을 μ•Œμ•˜μŠ΅λ‹ˆλ‹€. λ‚˜λŠ” 그것을 μ—¬λŸ¬ 번 볡제 ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

μ‹œλ„ν•˜κ³  말해. 질문이 있으면 λ§ν•˜μ‹­μ‹œμ˜€.

볡근

μ•ˆλ…•ν•˜μ„Έμš” @leodianoμž…λ‹ˆλ‹€!

cordova-plugin-firebase ν”ŒλŸ¬κ·ΈμΈμ„ cordova-plugin-firebase-lib둜 κ΅μ²΄ν•˜κ³  androidx 및 androidx-adapter도 μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.
이 λŒ“κΈ€μ— λŒ€ν•œ λ‚΄ μ§€μ‹œλ₯Ό λ”°λ₯΄μ‹­μ‹œμ˜€: #1084 (comment) )

Android Android 버전에 따라 μ„€μΉ˜ν•΄μ•Ό ν•˜λŠ” firebase-lib 버전을 ν™•μΈν•˜μ„Έμš”. μ—¬κΈ°λ₯Ό λ”°λ₯΄μ‹­μ‹œμ˜€: https://github.com/wizpanda/cordova-plugin-firebase-lib

λ‚΄κ°€ μΈμš©ν•œ μ„€λͺ…에 μ„€λͺ…λœ 단계λ₯Ό μ •ν™•ν•˜κ²Œ μ‹œλ„ν•˜λ©΄ 성곡할 κ²ƒμž…λ‹ˆλ‹€. Google μ—…λ°μ΄νŠΈ ν›„ 2일 λ™μ•ˆ 이 μž‘μ—…μ„ μˆ˜ν–‰ν–ˆμœΌλ©° λ§ˆμΉ¨λ‚΄ 이 μ†”λ£¨μ…˜μ΄ μ•ˆμ •μ μ΄λΌλŠ” 것을 μ•Œμ•˜μŠ΅λ‹ˆλ‹€. λ‚˜λŠ” 그것을 μ—¬λŸ¬ 번 볡제 ν•  μˆ˜μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

μ‹œλ„ν•˜κ³  말해. 질문이 있으면 λ§ν•˜μ‹­μ‹œμ˜€.

볡근

@viniciusbarbosa λ§ν¬λ“œμΈμ— μ΄ˆλŒ€μž₯을 λ³΄λƒˆμŠ΅λ‹ˆλ‹€. λ ˆμ˜€λ‚˜λ₯΄λ„ μΉΌλΌμž”μŠ€. 당신이 λ‚˜λ₯Ό λ„μšΈ 수 μžˆλ‹€λ©΄. 3μΌμ§Έμž…λ‹ˆλ‹€.

μ„€λͺ…λœ 단계λ₯Ό λ‹€μ‹œ μ‹œλ„ν•˜μ§€λ§Œ Android 버전이 7.1.4인 경우 λ‹€μŒμ„ μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€. cordova plugin add [email protected]

μžμ„Έν•œ λ‚΄μš©μ€ https://github.com/wizpanda/cordova-plugin-firebase-libλ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

무슨 일이 μΌμ–΄λ‚˜λŠ”μ§€ 말해봐

@viniciusbarbosa 인터콀을 μ œκ±°ν•˜λ©΄ μž‘λ™ν•©λ‹ˆλ‹€. 이제 인터콀 ν”ŒλŸ¬κ·ΈμΈμ„ μ œκ±°ν•˜κ³  Androidμ—μ„œ μˆ˜λ™μœΌλ‘œ κ΅¬μ„±ν–ˆμŠ΅λ‹ˆλ‹€.
λ‹Ήμ‹ μ˜ 도움과 μ‹œκ°„μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€!

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ
  2. ionic cordova build android (μ‹€νŒ¨)
  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

이것은 λ‚˜λ₯Ό tnx둜 μž‘λ™μ‹œν‚΅λ‹ˆλ‹€ !!

@viniciusbarbosa @JeetuChoudhary ꢌμž₯ 단계λ₯Ό λ”°λžμŠ΅λ‹ˆλ‹€. Androidμ—μ„œλŠ” 잘 λΉŒλ“œλ˜μ§€λ§Œ μ•Œλ¦Όμ΄ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

IOSμ—μ„œ λΉŒλ“œν•˜κ³  ν”ŒλŸ¬κ·ΈμΈ(cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-firebase-lib μΆ”κ°€)을 κ±΄λ„ˆλ›°κ³  Cordova 버전 9.0을 μ˜ˆμƒν•©λ‹ˆλ‹€.

@nsksaisaravana λ‹Ήμ‹ μ˜ μ½”λ₯΄λ„λ°” 버전은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?
μ½”λ₯΄λ„λ°” <= 8.1.1인 경우 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈμ„ μ‚¬μš©ν•˜μ—¬ [email protected]을 μΆ”κ°€ ν•˜μ‹­μ‹œμ˜€.
https://github.com/wizpanda/cordova-plugin-firebase-lib/ μ—μ„œ μžμ„Ένžˆ 보기

@viniciusbarbosa 즉각적인 정보λ₯Ό

μ•Œλ¦Όμ΄ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

Cordova-plugin-firebasex

2019λ…„ 6μ›” 19일 μˆ˜μš”μΌ μ˜€ν›„ 1μ‹œ 44λΆ„ Exusmultimedia - Exus.com.co <
[email protected]>은 λ‹€μŒκ³Ό 같이 μΌμŠ΅λ‹ˆλ‹€.

ionic cordova ν”ŒλŸ¬κ·ΈμΈ cordova-plugin-firebase 제거
이온 μ½”λ₯΄λ„λ°” ν”ŒλŸ¬κ·ΈμΈ μΆ”κ°€
https://github.com/dpa99c/cordova-plugin-firebase#GH -1057-April-05-android-build-issue
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-android-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
ionic cordova ν”ŒλŸ¬κ·ΈμΈμ€ cordova-plugin-androidx-adapterλ₯Ό μΆ”κ°€ν•©λ‹ˆλ‹€.
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ rm μ•ˆλ“œλ‘œμ΄λ“œ
이온 μ½”λ₯΄λ„λ°” ν”Œλž«νΌ μΆ”κ°€ [email protected]
이것은 였늘의 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. μ•„λ§ˆλ„ 이전 버전을 μ‚¬μš©ν•˜κΈ° λ•Œλ¬ΈμΌ κ²ƒμž…λ‹ˆλ‹€
Firebase ν”ŒλŸ¬κ·ΈμΈ 버전

κ°μ‚¬ν•©λ‹ˆλ‹€! @ChronouSphere https://github.com/ChronouSphereλ₯Ό μ‹œλ„ ν–ˆμŠ΅λ‹ˆλ‹€.
첫 번째 λ‹¨κ³„μ΄μ§€λ§Œ μ—¬μ „νžˆ [email protected]에 μžˆμ—ˆκ³  μ„€μΉ˜ν•  λ•Œ
android@8 λΉŒλ“œκ°€ μ„±κ³΅μ μœΌλ‘œ μ™„λ£Œλ˜μ—ˆμŠ΅λ‹ˆλ‹€ πŸ˜„

λ‚˜λ₯Ό μœ„ν•΄ μž‘λ™ν•˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€ :(, λ‹€λ₯Έ 아이디어?

β€”
당신이 λŒ“κΈ€μ„ λ‹¬μ•˜κΈ° λ•Œλ¬Έμ— 이것을 λ°›λŠ” κ²ƒμž…λ‹ˆλ‹€.
이 이메일에 직접 λ‹΅μž₯ν•˜κ³  GitHubμ—μ„œ ν™•μΈν•˜μ„Έμš”.
https://github.com/arnesson/cordova-plugin-firebase/issues/1084?email_source=notifications&email_token=AD2I3ZCZZ6AEMQUAS2RO7JLP3JV57A5CNFSM4HZD6YM2YY3PNVWWK3TUL52HS4DFXVEX
λ˜λŠ” μŠ€λ ˆλ“œ μŒμ†Œκ±°
https://github.com/notifications/unsubscribe-auth/AD2I3ZBGT3QWUEXYDTJIOXLP3JV57ANCNFSM4HZD6YMQ
.

@nsksaisaravana λ§ν¬λ“œμΈμ— μ €λ₯Ό μΆ”κ°€ν•˜κ³  μ±„νŒ…μ„ 톡해 이야기해 μ£Όμ‹œλ©΄ λ„μ™€λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€. https://www.linkedin.com/in/viniciusbarbosa4/

@viniciusbarbosa 큰 도움을 μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€. Android SDKμ—μ„œ ν™•μΈν–ˆλŠ”λ° μ œλŒ€λ‘œ μž‘λ™ν•˜μ§€ μ•Šμ•˜μ§€λ§Œ μŠ€ν† μ–΄μ— λ°°ν¬ν–ˆλŠ”λ° μ œλŒ€λ‘œ μž‘λ™ν•©λ‹ˆλ‹€.

당신은 λ‚˜λ₯Ό μ—¬λŸ¬ λ‚  κ΅¬ν•΄μ€¬μŠ΅λ‹ˆλ‹€. @viniciusbarbosa

@viniciusbarbosa IOSμ—μ„œ μˆ˜ν–‰ν•΄μ•Ό ν•˜λŠ” λ‹€λ₯Έ 단계가 μžˆλ‚˜μš”???

λ‚˜λŠ” 였λ₯˜ μ•„λž˜μ—μžˆμ–΄

'cordova-plugin-firebase-lib' μ„€μΉ˜ μ‹€νŒ¨: μ •μ˜λ˜μ§€ μ•ŠμŒ
CordovaError: 였λ₯˜κ°€ μ•„λ‹Œ 약속이 κ±°λΆ€λ˜μ—ˆμŠ΅λ‹ˆλ‹€: '/Library/Ruby/Gems/2.3.0/gems/claide-1.0.2/lib/claide/command.rb:439:in help!\': \u001b[31m[!] You cannot run CocoaPods as root.\u001b[39m (CLAide::Help)\n\n\u001b[4mUsage:\u001b[24m\n\n $ \u001b[32mpod\u001b[39m \u001b[32mCOMMAND\u001b[39m\n\n CocoaPods, the Cocoa library package manager.\n\n\u001b[4mCommands:\u001b[24m\n\n \u001b[32m+ cache\u001b[39m Manipulate the CocoaPods cache\n \u001b[32m+ env\u001b[39m Display pod environment\n \u001b[32m+ init\u001b[39m Generate a Podfile for the current directory\n \u001b[32m+ install\u001b[39m Install project dependencies according to versions from a\n Podfile.lock\n \u001b[32m+ ipc\u001b[39m Inter-process communication\n \u001b[32m+ lib\u001b[39m Develop pods\n \u001b[32m+ list\u001b[39m List pods\n \u001b[32m+ outdated\u001b[39m Show outdated project dependencies\n \u001b[32m+ repo\u001b[39m Manage spec-repositories\n \u001b[32m+ setup\u001b[39m Setup the CocoaPods environment\n \u001b[32m+ spec\u001b[39m Manage pod specs\n \u001b[32m+ update\u001b[39m Update outdated project dependencies and create new Podfile.lock\n\n\u001b[4mOptions:\u001b[24m\n\n \u001b[34m--silent\u001b[39m Show nothing\n \u001b[34m--version\u001b[39m Show the version of the tool\n \u001b[34m--verbose\u001b[39m Show more debugging information\n \u001b[34m--no-ansi\u001b[39m Show output without ANSI codes\n \u001b[34m--help\u001b[39m Show help banner of specified command\n\tfrom /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.6.0/lib/cocoapods/command.rb:47:in run\'\ n\tfrom /Library/Ruby/Gems/2.3.0/gems/cocoapods-1.6.0/bin/ pod:55 :in <top (required)>\'\n\tfrom /usr/local/bin/pod:22:in load\'\n\tfrom /usr/local/bin/ pod :22 :in `

\'\N'
cli.catch.errμ—μ„œ (/usr/local/lib/node_modules/cordova/bin/cordova:29:15)
~에
process._tickCallbackμ—μ„œ (λ‚΄λΆ€/ν”„λ‘œμ„ΈμŠ€/next_tick.js:189:7)

@nsksaisaravana firebase -lib λŒ€μ‹  https://github.com/dpa99c/cordova-plugin-firebase λ₯Ό μ‹œλ„ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@nsksaisaravana

Cordova-ios의 버전을 보고 μ„€μΉ˜ν•΄μ•Ό ν•˜λŠ” ν”ŒλŸ¬κ·ΈμΈ 버전을 ν™•μΈν•˜μ‹­μ‹œμ˜€.
https://github.com/wizpanda/cordova-plugin-firebase-lib/

κ³ μž₯λ‚œ μ΄μœ λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
https://github.com/arnesson/cordova-plugin-firebase/blob/5a3c08d4e2e9d372894d778ca8c8c3d7c3d72d0d/src/android/build.gradle#L20

Google Firebase μ—…λ°μ΄νŠΈ - 2019λ…„ 6μ›” 17일
https://firebase.google.com/support/release-notes/android#version_1621

이 λ¦΄λ¦¬μŠ€μ—μ„œλŠ” λ‹€μŒ λΌμ΄λΈŒλŸ¬λ¦¬κ°€ μ—…λ°μ΄νŠΈλ˜μ—ˆμŠ΅λ‹ˆλ‹€.
인증 버전 18.0.0

이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ°Ύμ•˜κ³  λŒ€μƒ SDK 버전 27을 μœ μ§€ν•©λ‹ˆλ‹€.

  1. ν•˜λ“œ 정리: platforms/android μ‚­μ œ
  2. ionic cordova build android (μ‹€νŒ¨)
  3. platforms/android/project.properties μ—…λ°μ΄νŠΈ:
cordova.system.library.3=com.google.android.gms:play-services-tagmanager:16.0.8
cordova.system.library.4=com.google.firebase:firebase-core:16.0.8
cordova.system.library.5=com.google.firebase:firebase-messaging:17.5.0
cordova.system.library.6=com.google.firebase:firebase-config:16.4.1
cordova.system.library.7=com.google.firebase:firebase-perf:16.2.4
  1. platforms/android/app/build.gradle μ—…λ°μ΄νŠΈ(쒅속성 ~ln 266)
    compile "com.google.android.gms:play-services-tagmanager:16.0.8"
    compile "com.google.firebase:firebase-core:16.0.8"
    compile "com.google.firebase:firebase-messaging:17.5.0"
    compile "com.google.firebase:firebase-config:16.4.1"
    compile "com.google.firebase:firebase-perf:16.2.4"
  1. platforms/android/cordova-plugin-firebase/cloud-build.gradle μ—…λ°μ΄νŠΈ(μ’…μ†μ„±μ—μ„œ)
    compile 'com.google.firebase:firebase-auth:16.2.1'
  1. ionic cordova build android
    λ˜λŠ”
    cd platforms/android
    ./gradlew build

λ‚˜λŠ” λ˜‘κ°™μ΄ν–ˆμ§€λ§Œ μ—¬μ „νžˆ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

  • 무엇이 잘λͺ»λ˜μ—ˆλŠ”지:
    μž‘μ—… ':app:mergeDebugResources'에 λŒ€ν•œ 싀행에 μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€.
    > 였λ₯˜: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 였λ₯˜: μžμ„Έν•œ λ‚΄μš©μ€ 둜그 확인
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰