Cordova-plugin-firebase: рдЕрдм Android рдкрд░ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 18 рдЬреВрди 2019  ┬╖  59рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: arnesson/cordova-plugin-firebase

рдореИрдВ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЕрдкрдирд╛ рдЖрд╡реЗрджрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд░рд╣рд╛ рдерд╛ред рдореИрдВ рдЖрдЬ рдЗрд╕реЗ 10 рдмрд╛рд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдлрд┐рд░ рд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдерд╛ рдФрд░ рдЕрдм рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдлрд╛рдпрд░рдмреЗрд╕ рдкреНрд▓рдЧрдЗрди рд╣реЛрдиреЗ рдкрд░ рдореИрдВ рдирд╣реАрдВ рдЪрд▓рд╛ рд╕рдХрддрд╛ред

рдЕрдЧрд░ рдореИрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░рди рдкреНрд▓рдЧрдЗрди рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реВрдВред

рдореИрдВ [email protected] рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛

рдирд┐рдореНрди рдмрд┐рд▓реНрдб рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ:

:app:processDebugResources/home/sandro/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/c9104c96e21bf9c9613f4661f4e5d49e/res/values/values.xml:246:5-69: AAPT: error: resource android:attr/fontVariationSettings not found.

/home/sandro/.gradle/caches/transforms-1/files-1.1/appcompat-v7-26.1.0.aar/c9104c96e21bf9c9613f4661f4e5d49e/res/values/values.xml:246:5-69: AAPT: error: resource android:attr/ttcIndex not found.

/home/user/my_cordova_project/platforms/android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:244: error: resource android:attr/fontVariationSettings not found.
/home/user/my_cordova_project/platforms/android/app/build/intermediates/incremental/mergeDebugResources/merged.dir/values/values.xml:244: error: resource android:attr/ttcIndex not found.
error: failed linking references.

Failed to execute aapt
com.android.ide.common.process.ProcessException: Failed to execute aapt
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
    at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
    at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
    at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$IncrementalTaskAction.doExecute(DefaultTaskClassInfoStore.java:173)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:134)
    at org.gradle.api.internal.project.taskfactory.DefaultTaskClassInfoStore$StandardTaskAction.execute(DefaultTaskClassInfoStore.java:121)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:122)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:111)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)
    at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)
    at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:63)
    at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)
    at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:88)
    at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
    at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)
    at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
    at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:197)
    at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)
    at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:124)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:80)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:105)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:99)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:625)
    at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:580)
    at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:99)
    at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
    at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
    at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
    at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)
    at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
    at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794)
    ... 48 more
Caused by: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
    at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)
    at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:462)
    at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)
    at com.android.builder.internal.aapt.v2.QueueableAapt2.lambda$makeValidatedPackage$1(QueueableAapt2.java:179)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    ... 1 more
Caused by: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
    at com.android.builder.png.AaptProcess$NotifierProcessOutput.handleOutput(AaptProcess.java:463)
    at com.android.builder.png.AaptProcess$NotifierProcessOutput.err(AaptProcess.java:415)
    at com.android.builder.png.AaptProcess$ProcessOutputFacade.err(AaptProcess.java:332)
    at com.android.utils.GrabProcessOutput$1.run(GrabProcessOutput.java:104)

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:processDebugResources'.

рдХреНрдпрд╛ рдХрд┐рд╕реА рдФрд░ рдХреЛ рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИ? рдзрдиреНрдпрд╡рд╛рджред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╕рдорд╛рдзрд╛рди рдореИрдВрдиреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд▓рд┐рдпрд╛ рд╣реИ https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503041641

  1. рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ build-extras.gradle рдбрд╛рд▓реЗрдВ
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. рдЗрд╕ рд╣реБрдХ рдХреЛрдб рдХреЛ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбрд╛рд▓реЗрдВ/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЕрдВрджрд░ config.xml рдореЗрдВ рд╣реБрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. рд╣реБрдХ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
cordova platform rm android
cordova platform add android

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдЧреА

рд╕рднреА 59 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рддреАрди рджрд┐рди рд╕реЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЬреВрдЭ рд░рд╣реЗ рд╣реИрдВ

рд╣реИрд▓реЛ @SandroMoretti ,

рдореИрдВ рдЙрд╕ рдореБрджреНрджреЗ рдХреЗ рд╕рд╛рде рдкреВрд░реЗ рджрд┐рди рд▓рдбрд╝ рд░рд╣рд╛ рд╣реВрдВ ... рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдХреЙрд░реНрдбреЛрд╡рд╛ 8 рдореЗрдВ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ Ionic 4 рдХреЛ рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХрд╛ рднреА рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ (рдпрд╣ Ionic 3 рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)ред рддреЛ, рдХреЙрд░реНрдбреЛрд╡рд╛ 8 рдФрд░ рдЖрдпреЛрдирд┐рдХ 4 рдХреЗ рд╕рд╛рде рдХрдИ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рдмрд╛рдж рдореИрдВ рдПрдХ рд╣реА рдмрд┐рдВрджреБ рдкрд░ рдЖрдпрд╛ рд╣реВрдВ ... рдЖрдкрдиреЗ рдЬреЛ рддреНрд░реБрдЯрд┐ рдкреЛрд╕реНрдЯ рдХреА рд╣реИ рд╡рд╣ рдПрдВрдбреНрд░реЙрдЗрдб 28 рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдкреБрд╕реНрддрдХрд╛рд▓рдп 'com.google' рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред рдлрд╛рдпрд░рдмреЗрд╕: рдлрд╛рдпрд░рдмреЗрд╕-рдПрдХреНрд╕ : +' рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ рдХрд▓ рдлрд╛рдпрд░рдмреЗрд╕ рдиреЗ рдПрдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рд░рд┐рд▓реАрдЬ рдПрдлрдмреА 17 рдЬреВрди рдХрд┐рдпрд╛ рдЬреЛ рдПрдВрдбреНрд░реЙрдЗрдб 28 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИ ... рдореИрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рд╛рде рдЦреЗрд▓ рд░рд╣рд╛ рд╣реВрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЗрд╕реЗ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рд╣рдореЗрд╢рд╛ рдПрдХ рдФрд░ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА .. .

рдХрд┐рд╕реА рднреА рдорджрдж рдХреЛ рд╕рд░рд╛рд╣рд╛ рдЬрд╛рдПрдЧрд╛, рдзрдиреНрдпрд╡рд╛рдж!

рдореЗрд░рд╛ рднреА рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд▓рдЧрдЗрди com.google.firebase:firebase-auth:+ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрднреА рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:

https://developers.google.com/android/guides/releases

рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдЧрд┐рд░рд╛ рд╕рдорд░реНрдерди <28

рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рднреА! рдореИрдВ рдЕрдм Android рдкрд░ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдореБрдЭреЗ рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдЕрдм рдореИрдВ рдРрдк рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рдФрд░ рдпрд╣ рддреНрд░реБрдЯрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ:

:app:processDebugResources
C:\Users\mmzep\.gradle\caches\transforms-1\files-1.1\core-1.0.0.aar\73b4a83ab5e76f20c84a66b1c8444d08\res\values\values.xml:133:5-70: AAPT: error: resource android:attr/fontVariationSettings not found.

C:\Users\mmzep\.gradle\caches\transforms-1\files-1.1\core-1.0.0.aar\73b4a83ab5e76f20c84a66b1c8444d08\res\values\values.xml:133:5-70: AAPT: error: resource android:attr/ttcIndex not found.

C:\Users\mmzep\Desktop\mario\Seven\SevenPassengerApp\platforms\android\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:95: error: resource android:attr/fontVariationSettings not found.
C:\Users\mmzep\Desktop\mario\Seven\SevenPassengerApp\platforms\android\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:95: error: resource android:attr/ttcIndex not found.
error: failed linking references.

Failed to execute aapt

com.android.ide.common.process.ProcessException: Failed to execute aapt

        at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796)
        at com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551)
        at com.android.build.gradle.tasks.ProcessAndroidResources.doFullTaskAction(ProcessAndroidResources.java:285)
        at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:109)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рддрдВрдЧ рд╕рдордп рд╕реАрдорд╛ рдкрд░ рд╣реВрдВ рдФрд░ рдпрд╣ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдлрд╛рдпрд░рдмреЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдиреБрд╕реНрдЦрд╛ рдиреЗ рдореЗрд░реА рдорджрдж рдХреА https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503041641

рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдореИрдВрдиреЗ https://firebase.google.com/support/release-notes/android#20180523 рдкрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдХреЙрд░реНрдбреЛрд╡рд╛ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЛ 8.0.0 рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рд╕рдлрд▓рддрд╛ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИред рдЬрдм рдореИрдВ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╛рдпрд░рдмреЗрд╕ рд╣рдЯрд╛рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рдореБрдЭреЗ рдЬреЛ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ:

Dependency failing: com.google.android.gms:play-services-tagmanager-api:15.0.2 -> com.google.android.gms:play-services-m
  easurement-base@[15.0.2], but play-services-measurement-base version was 15.0.4.

  The following dependencies are project dependencies that are direct or have transitive dependencies that lead to the art
  ifact with the issue.
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.firebase:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]
  -- Project 'app' depends onto com.google.android.gms:[email protected]

рддреЛ рдлрд╛рдпрд░рдмреЗрд╕ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рдЖрдЬ рд╕реБрдмрд╣ рдореБрдЭреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд╕реАрдирд╛ рдЖ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ рдирдИ рдорд╛рд╡реЗрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╣реБрдП рджреЗрдЦрд╛ рд╣реИ рдФрд░ рдореЗрд░реА рдЙрдореНрдореАрджреЛрдВ рдкрд░ рдпрд╣ рд╕рдм рддреЗрдЬреА рд╕реЗ рдмрдврд╝ рдЧрдпрд╛ рд╣реИ!

рдореЗрд░рд╛ рднреА рдпрд╣реА рд╡рд┐рдЪрд╛рд░ рд╣реИред рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдХреГрдкрдпрд╛

рд╕рдорд╛рдзрд╛рди рдореИрдВрдиреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд▓рд┐рдпрд╛ рд╣реИ https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503041641

  1. рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ build-extras.gradle рдбрд╛рд▓реЗрдВ
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. рдЗрд╕ рд╣реБрдХ рдХреЛрдб рдХреЛ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбрд╛рд▓реЗрдВ/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЕрдВрджрд░ config.xml рдореЗрдВ рд╣реБрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. рд╣реБрдХ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
cordova platform rm android
cordova platform add android

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдЧреА

рдпрд╣ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдХрдо "рд╣реИрдХреНрд╕" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП: https://github.com/arnesson/cordova-plugin-firebase/issues/1081#issuecomment -503135862 (cordova-android@8 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)

рдзрдиреНрдпрд╡рд╛рдж @igorkurochka , рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛

рдкреАрдПрд╕: рдореИрдВ рдХреЙрд░реНрдбреЛрд╡рд╛ 6.5 рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб 7.1.4 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдПрдВрдбреНрд░реЙрдЗрдб 8 рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдЬреИрд╕реЗ рдбреИрди рдиреЗ рдмрддрд╛рдпрд╛ред

@SandroMoretti рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдк рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдЗрд╕реЗ рдХрд░реЗрдВ .. рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд▓рдЧрдЗрди рдЕрдзрд┐рдХ рд╕рд┐рд░рджрд░реНрдж рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдкреНрд░реИрд▓ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рдХреЗ рдПрдХ рдХрд╛рдВрдЯреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдмрд┐рд▓реНрдб рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреЙрд░реНрдбреЛрд╡рд╛-рдПрдВрдбреНрд░реЙрдЗрдб @ 7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, рдХреБрдЫ рд▓рдЧрддрд╛ рд╣реИ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЬреЛ рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ, рдЕрдм рдПрдкреАрдЖрдИ <28 рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЙрд░реНрдбреЛрд╡рд╛ -рдПрдВрдбреНрд░реЙрдЗрдб @ 8 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ рдЬреЛ рдПрдкреАрдЖрдИ 28 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ...

@ dann95 , рдореБрдЭреЗ рдкрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдбреЗрдЯ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рдХреНрдпреЛрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрдкрдиреЗ рдХреЙрд░реНрдбреЛрд╡рд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

Npm рдмрд╕ рдпрд╣рд╛рдВ рдХреЙрд░реНрдбреЛрд╡рд╛ 6.5 рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рд╢рд╛рдпрдж рдореЗрд░реА рдкреБрд░рд╛рдиреА рдкреНрд░рдгрд╛рд▓реА рд╣реИ (рдЙрдмрдВрдЯреВ 14)ред
рдХрд┐рд╕реА рджрд┐рди рдореИрдВ рдЕрдкрдиреЗ рдУрдПрд╕ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рджрд┐рди рдЖрд░рдХреНрд╖рд┐рдд рдХрд░реВрдВрдЧрд╛ рдлрд┐рд░ рдореИрдВ рдХреЙрд░реНрдбреЛрд╡рд╛ рдФрд░ рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реВрдВрдЧрд╛ред
рдзрдиреНрдпрд╡рд╛рджред

рдЖрдкрдХрд╛ рдХреЙрд░реНрдбреЛрд╡рд╛ рдХреНрд▓реА рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рдЖрдкрдХреЛ рдЗрд╕реЗ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛ред "-рдЬреА" рдПрдХреНрд╕рдбреА

@SandroMoretti рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдЖрдк рдЕрдкрдбреЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдЗрд╕реЗ рдХрд░реЗрдВ .. рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдкреНрд▓рдЧрдЗрди рдЕрдзрд┐рдХ рд╕рд┐рд░рджрд░реНрдж рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдкреНрд░реИрд▓ рдореЗрдВ рдкреНрд▓рдЧрдЗрди рдХреЗ рдПрдХ рдХрд╛рдВрдЯреЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдмрд┐рд▓реНрдб рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреЙрд░реНрдбреЛрд╡рд╛-рдПрдВрдбреНрд░реЙрдЗрдб @ 7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, рдХреБрдЫ рд▓рдЧрддрд╛ рд╣реИ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдЬреЛ рдЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╣реИ, рдЕрдм рдПрдкреАрдЖрдИ <28 рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЙрд░реНрдбреЛрд╡рд╛ -рдПрдВрдбреНрд░реЙрдЗрдб @ 8 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реИ рдЬреЛ рдПрдкреАрдЖрдИ 28 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ...

рдкрд╣рд▓реЗ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╛рдпрд░рдмреЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ 93,9 рдПрдордмреА рдереА, рдЕрдм 1,30 рдПрдордмреАред
рдкрд╣рд▓реЗ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдХреЛрдХреЛрдкреЛрдб-рд╕рдорд░реНрдерди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрдм рдпрд╣ рд╣реИред

рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рд╡рд╣реА?

@pegasx
рдХреЛрдХреЛрдкреЛрдб-рд╕рдорд░реНрдерди рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИред

@pegasx
рдХреЛрдХреЛрдкреЛрдб-рд╕рдорд░реНрдерди рдореЗрд░реЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИред

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ, рдЖрдкрдиреЗ dpa99c рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ред рддреЛ рд╕рд╡рд╛рд▓ @ dann95 рдХреЗ рд▓рд┐рдП рд╣реИред

рдкрд╣рд▓реЗ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╛рдпрд░рдмреЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ 93,9 рдПрдордмреА рдереА, рдЕрдм 1,30 рдПрдордмреАред
рдкрд╣рд▓реЗ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдХреЛрдХреЛрдкреЛрдб-рд╕рдорд░реНрдерди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЕрдм рдпрд╣ рд╣реИред

рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рд╡рд╣реА?

image

рдХреЛрдХреЛрдкреЛрдб "рддреЗрдЬ" рдХреЗ рд▓рд┐рдП рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдирдХреНрд╕ рдореЗрдВ рднреА рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд╛рдВрдЪ рдХрд░реЗрдЧрд╛ рдХрд┐ рдХреНрдпреЛрдВ

рдЖрдХрд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдЖрдИрдбреАрдХреЗ рдкрд╣рд▓реЗ рдЖрдХрд╛рд░ рдХреНрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреА рдкрдбрд╝реА рдФрд░ рдЕрдкрдиреА рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЙрд╕ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдХреЙрдкреА рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХреНрдпреЛрдВрдХрд┐ рд▓рд┐рдВрдХ рдореЗрдВ рджрд┐рдП рдЧрдП рдЪрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореМрдЬреВрджрд╛ рднрдВрдбрд╛рд░ рдкрд░ рдФрд░ рд╕рдорд╕реНрдпрд╛рдПрдВ рдкреИрджрд╛ рд╣реБрдИрдВ ...

рдзрдиреНрдпрд╡рд╛рдж @igorkurochka , рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ред

@igorkurochka
рдЖрдкрдХреЗ рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рдореЗрд░реЗ рдЕрдВрдд рдореЗрдВ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ рдиреАрдЪреЗ рджреА рдЧрдИ рд╕реВрдЪреА рдлрд╝рд┐рд░рдмреЗрд╕ рдкреНрд▓рдЧрдЗрди рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЗрдиреНрд╣реЗрдВ рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рд╣реА рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдмрд╛рд╣рд░реА рдХреЙрд░реНрдбреЛрд╡рд╛ рд╣реБрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрдиреНрд╣реЗрдВ рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВред рдорд╛рд╕реНрдЯрд░ рд░реЗрдкреЛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЗ рд╕рдЯреАрдХ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреБрд▓ рдЕрдиреБрд░реЛрдз рдмрдирд╛рдиреЗ рдХрд╛ рдХреЛрдИ рдореМрдХрд╛ рд╣реИ? рдзрдиреНрдпрд╡рд╛рджред

```
рдбреАрдИрдПрдлрд╝ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реАрдореИрдк = [
"com.google. firebase:firebase-core ": "16.0.8",
"com.google. firebase:firebase-iid ": "17.1.1",
"com.google. firebase:firebase-messaging ": "17.5.0",
"com.google. firebase:firebase-config ": "16.4.0",
"com.google. firebase:firebase-perf ": "16.2.4",
"com.google.android. gms:play-services-tagmanager ": "16.0.8",
"com.google. firebase:firebase-auth ": "16.2.0"
]

@SandroMoretti
рдпрд╣ рд╕рдЪ рд╣реИ рдХрд┐ @igorkurochka рдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдареАрдХ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рд╕рдорд╛рдзрд╛рди рд╣реИред рдкреНрд▓рдЧрдЗрди рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рди рдХрд┐ рдХреЙрд░реНрдбреЛрд╡рд╛ рдРрдк рджреНрд╡рд╛рд░рд╛ред рдкреНрд▓рдЧрдЗрди рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдмрджрд▓рдиреА рдЪрд╛рд╣рд┐рдП, рдпрд╣ рдлрд┐рдХреНрд╕ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВред

рд╕рдорд╛рдзрд╛рди рдореИрдВрдиреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд▓рд┐рдпрд╛ рд╣реИ #1081 (рдЯрд┐рдкреНрдкрдгреА)

  1. рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ build-extras.gradle рдбрд╛рд▓реЗрдВ
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. рдЗрд╕ рд╣реБрдХ рдХреЛрдб рдХреЛ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбрд╛рд▓реЗрдВ/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЕрдВрджрд░ config.xml рдореЗрдВ рд╣реБрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. рд╣реБрдХ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
cordova platform rm android
cordova platform add android

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдЧреА

рд╣рд╛рдп @igorkurochka , рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЗрд╕рдореЗрдВ рдореЗрд░реА рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо/рдПрдВрдбреНрд░реЙрдЗрдб/рдРрдк/src/main/java/org/apache/cordova/firebase/FirebasePlugin. рдЬрд╛рд╡рд╛: 9 : рддреНрд░реБрдЯрд┐: рдкреНрд░рддреАрдХ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ
android.support.v4.app.NotificationManagerCompat рдЖрдпрд╛рдд рдХрд░реЗрдВ;

@pankajPizone рдХреНрдпрд╛ рдЖрдкрдиреЗ

rm -rf ~/.gradle/

@ dann95 android рдлрд╝реЛрд▓реНрдбрд░ рд╕реЗ?

"~" рдХрд╛ рдЕрд░реНрде рд╣реИ рдЖрдкрдХрд╛ рдШрд░, рддреЛ рдпрд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕рд╛рдлрд╝ рдХрд░реЗрдЧрд╛

/home/myusername/.gradle/

рдареАрдХ рд╣реИ @ dann95 рдореИрдВ рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

@ dann95 рдпрд╣ рдЕрднреА рднреА рд╡рд╣реА рд╣реИ

рдареАрдХ рд╣реИред
рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓реЗрдВред
рдзрдиреНрдпрд╡рд╛рдж @uifox

рдбреИрди, рдореЗрд░реА рдХреЙрд░реНрдбреЛрд╡рд╛ рдХреНрд▓реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкреБрдирдГ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдЬреИрд╕рд╛ рдореИрдВрдиреЗ рдХрд╣рд╛ рд╣реИ, рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж 6.5 рд░рдЦреЗрдВред

рдзрдиреНрдпрд╡рд╛рджред

@SandroMoretti рдХреНрдпрд╛ рдЖрдкрдХреЛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛?
рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ
рдлрд╛рдпрд░рдмреЗрд╕/рдлрд╛рдпрд░рдмреЗрд╕рдкреНрд▓рдЧрд┐рдирдореИрд╕реЗрдЬрд┐рдВрдЧрд╕рд░реНрд╡рд┐рд╕. рдЬрд╛рд╡рд╛: 11 : рддреНрд░реБрдЯрд┐: рдкреНрд░рддреАрдХ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ
рдЖрдпрд╛рдд android.support.v4.app.NotificationCompat;

@SandroMoretti рд╢рд╛рдпрдж рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░ рд░рд╣рд╛ рд╣реИ? рдиреЛрдб рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдЖрд╕рд╛рдиреА рд╕реЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП nvm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ ..

@pankajPizone рдХреНрдпрд╛ рдЖрдк рд╕рднреА рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд╕рд╛рде рдЕрдкрдирд╛ config.xml рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВ?

@ dann95 рдпрд╣рд╛рдБ config.xml рдореЗрдВ рдкреНрд▓рдЧрдЗрди рд╣реИ

<plugin name="cordova-plugin-statusbar" spec="^2.4.2" />
    <plugin name="cordova-plugin-splashscreen" spec="^5.0.2" />
    <plugin name="cordova-plugin-ionic-webview" spec="^2.4.0">
        <variable name="ANDROID_SUPPORT_ANNOTATIONS_VERSION" value="27.+" />
    </plugin>
    <plugin name="cordova-plugin-ionic-keyboard" spec="^2.1.3" />
    <plugin name="cordova-plugin-firebase" spec="^2.0.5" />
    <plugin name="cordova-plugin-facebook4" spec="^4.2.1">
        <variable name="APP_ID" value="xxxxxx" />
        <variable name="APP_NAME" value="x x" />
        <variable name="FACEBOOK_ANDROID_SDK_VERSION" value="4.38.1" />
        <variable name="FACEBOOK_HYBRID_APP_EVENTS" value="false" />
    </plugin>
    <plugin name="cordova-plugin-nativegeocoder" spec="^3.2.0" />
    <plugin name="cordova-plugin-geolocation" spec="^4.0.1">
        <variable name="GEOLOCATION_USAGE_DESCRIPTION" value="To locate you" />
    </plugin>
    <plugin name="cordova-plugin-appavailability" spec="^0.4.2" />
    <plugin name="cordova-plugin-media" spec="^5.0.2" />
    <plugin name="cordova-plugin-music-controls" spec="^2.2.0" />
    <plugin name="cordova-plugin-contacts" spec="^3.0.1" />
    <plugin name="cordova-plugin-applemusic" spec="^1.3.3" />
    <plugin name="cordova-plugin-apple-music" spec="^0.2.5" />
    <plugin name="cordova-plugin-whitelist" spec="^1.3.3" />
    <plugin name="com.telerik.plugins.nativepagetransitions" spec="^0.6.5" />
    <plugin name="cordova-plugin-applemusic" spec="^1.3.3" />
    <plugin name="cordova-plugin-apple-music" spec="^0.2.5" />
    <plugin name="cordova-plugin-add-swift-support" spec="1.7.2" />
    <allow-navigation href="http://192.168.1.120:8100" sessionid="8e9a7c7b" />
    <plugin name="com.telerik.plugins.nativepagetransitions" spec="0.6.5" />
  <plugin name="cordova-plugin-googleplus" spec="7.0.0">
        <variable name="REVERSED_CLIENT_ID" value="com.googleusercontent.apps.xxxxxxx" />
        <variable name="WEB_APPLICATION_CLIENT_ID" value="xxxxx-xxxxxxx.apps.googleusercontent.com" />
        <variable name="PLAY_SERVICES_VERSION" value="11.8.0" />
    </plugin>
    <plugin name="cordova-plugin-device" spec="../../cordova-plugin-device" />
    <plugin name="uk.co.workingedge.phonegap.plugin.launchnavigator" spec="5.0.4">
        <variable name="GOOGLE_API_KEY_FOR_ANDROID" value="xxxxx" />
        <variable name="OKHTTP_VERSION" value="3.12.0" />
    </plugin>
    <plugin name="cordova-plugin-customurlscheme" spec="4.3.0">
        <variable name="URL_SCHEME" value="spotifyapp" />
        <variable name="ANDROID_SCHEME" value=" " />
        <variable name="ANDROID_HOST" value=" " />
        <variable name="ANDROID_PATHPREFIX" value="/" />
    </plugin>
    <plugin name="cordova-spotify-oauth" spec="0.1.11" />
    <plugin name="cordova-spotify" spec="0.5.8" />
    <plugin name="cordova-plugin-geofence" spec="0.7.0" />
    <engine name="ios" spec="4.5.5" />
    <engine name="android" spec="8.0.0" />

@ dann95 рдХреНрдпрд╛ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдорджрджрдЧрд╛рд░ рд╣реИ?

@pankajPizone рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рдХреНрдпреЛрдВ, рдХреНрдпрд╛

@ dann95 рдореИрдВрдиреЗ рдХрдИ рдмрд╛рд░ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред

рдореИрдВрдиреЗ рджреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рд╣реИ

ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

@pankajPizone рдореИрдВ рднреА рдЗрди рджреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛

рдореБрдЭреЗ рдЕрднреА рднреА рдЗрд╕ рдЕрджреНрдпрддрди рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдЖ рд░рд╣реА рд╣реИ:

  • рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ:
    рдХрд╛рд░реНрдп рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ ': рдРрдк: рдХрдВрдкрд╛рдЗрд▓рдбрд┐рдмрдЧрдЬрд╛рд╡рд╛рд╡рд┐рде рдЬрд╛рд╡реИрдХ 'ред

    рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди ': рдРрдк: рдбреАрдмрдЧрдХрдВрдкрд╛рдЗрд▓ рдХреНрд▓рд╛рд╕рдкрд╛рде ' рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрд╛рд░реНрдп рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред
    androidx рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рдорд┐рд▓рд╛ред рд╡рд┐рд░рд╛рд╕рдд: рд╡рд┐рд░рд╛рд╕рдд-рд╕рдорд░реНрдерди-v4 : 27.+ред
    рд╡реЗ рд╕рдВрд╕реНрдХрд░рдг рдЬреЛ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ:

    • 1.0.0
    • 1.0.0-рдЖрд░рд╕реА02
    • 1.0.0-рдЖрд░рд╕реА01
    • 1.0.0-рдмреАрдЯрд╛01
    • 1.0.0-рдЕрд▓реНрдлрд╛3

      • 1 рдФрд░

        рджреНрд╡рд╛рд░рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд:

        рдкрд░рд┐рдпреЛрдЬрдирд╛: рдРрдк

  • рдкреНрд░рдпрддреНрди:
    рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --stacktrace рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдПрдБред рдЕрдзрд┐рдХ рд▓реЙрдЧ рдЖрдЙрдЯрдкреБрдЯ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --info рдпрд╛ --debug рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдПрдБред рдкреВрд░реНрдг рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --рд╕реНрдХреИрди рдХреЗ рд╕рд╛рде рджреМрдбрд╝реЗрдВред

  • https://help.gradle.org рдкрд░ рдЕрдзрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд

58s . рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рд╡рд┐рдлрд▓
C:UsersAdminDesktopOMNICARomnicarplatformsandroidgradlew: рдХрдорд╛рдВрдб рдПрдХреНрдЬрд┐рдЯ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реБрдЖ 1 рддреНрд░реБрдЯрд┐ рдЖрдЙрдЯрдкреБрдЯ:
рд╡рд┐рдлрд▓рддрд╛: рдирд┐рд░реНрдорд╛рдг рдПрдХ рдЕрдкрд╡рд╛рдж рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рд╛ред

  • рдХреНрдпрд╛ рдЧрд▓рдд рд╣реБрдЖ:
    рдХрд╛рд░реНрдп рдХреА рдирд┐рд░реНрднрд░рддрд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ ': рдРрдк: рдХрдВрдкрд╛рдЗрд▓рдбрд┐рдмрдЧрдЬрд╛рд╡рд╛рд╡рд┐рде рдЬрд╛рд╡реИрдХ'ред
    > рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рднреА рдХрд╛рд░реНрдп рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ ': рдРрдк: рдбреАрдмрдЧрдХрдВрдкрд╛рдЗрд▓ рдХреНрд▓рд╛рд╕рдкрд╛рде'ред
    > androidx рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓рд╛ рдХреЛрдИ рднреА рд╕рдВрд╕реНрдХрд░рдг рдирд╣реАрдВ рдорд┐рд▓рд╛ред рд╡рд┐рд░рд╛рд╕рдд: рд╡рд┐рд░рд╛рд╕рдд-рд╕рдорд░реНрдерди-v4 : 27.+ред
    рд╡реЗ рд╕рдВрд╕реНрдХрд░рдг рдЬреЛ рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛рддреЗ:

    • 1.0.0

    • 1.0.0-рдЖрд░рд╕реА02

    • 1.0.0-рдЖрд░рд╕реА01

    • 1.0.0-рдмреАрдЯрд╛01

    • 1.0.0-рдЕрд▓реНрдлрд╛3



      • 1 рдФрд░


        рджреНрд╡рд╛рд░рд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд:


        рдкрд░рд┐рдпреЛрдЬрдирд╛: рдРрдк



рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдореИрдВ рдмрд┐рд▓реНрдб рдореЗрдВ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВред рдЧреНрд░реЗрдбрд▓ рд╕рд╣реА рд╣реИ, рд▓реЗрдХрд┐рди рдЬрдм рдореИрдВ "рдХреЙрд░реНрдбреЛрд╡рд╛ рд╕рдВрдХрд▓рди" рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдореЗрд░реА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЧрд▓рдд рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИред

рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди ls
рдХреЙрд░реНрдбреЛрд╡рд╛-рдлрд╝реИрдмреНрд░рд┐рдХ-рдкреНрд▓рдЧрдЗрди 1.1.14-рджреЗрд╡ "рдХреЙрд░реНрдбреЛрд╡рд╛-рдлрд╝реИрдмреНрд░рд┐рдХ-рдкреНрд▓рдЧрдЗрди"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдб-рдЕрдиреБрдорддрд┐рдпрд╛рдВ 1.0.0 "рдЕрдиреБрдорддрд┐рдпрд╛рдВ"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдбx 1.0.2 "рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдбx"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдбрдПрдХреНрд╕-рдПрдбрд╛рдкреНрдЯрд░ 1.0.2 "рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдбрдПрдХреНрд╕-рдПрдбрд╛рдкреНрдЯрд░"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдХреИрдорд░рд╛ 4.0.3 "рдХреИрдорд░рд╛"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдХреЛрдХреЛрдкреЛрдб-рд╕рдкреЛрд░реНрдЯx 1.6.1 "рдХреЙрд░реНрдбреЛрд╡рд╛ рдХреЛрдХреЛрдЖрдкреЙрдбреНрд╕ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рд╕рдкреЛрд░реНрдЯ"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╕рд▓ 0.3.1 "рдХреНрд░реЙрдкрдкреНрд▓рдЧрд┐рди"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдбрд┐рд╡рд╛рдЗрд╕ 1.1.7 "рдбрд┐рд╡рд╛рдЗрд╕"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╝рд╛рдЗрд▓ 6.0.1 "рдлрд╝рд╛рдЗрд▓"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╝рд╛рдЗрд▓ рдЪрдпрдирдХрд░реНрддрд╛ 1.2.0 "рдлрд╝рд╛рдЗрд▓ рдЪрдпрдирдХрд░реНрддрд╛"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╝рд╛рдЗрд▓рдкрде 1.5.5 "рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╝рд╛рдЗрд▓рдкрде"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╛рдпрд░рдмреЗрд╕реЗрдХреНрд╕ 2.0.6 "рдЧреВрдЧрд▓ рдлрд╛рдпрд░рдмреЗрд╕ рдкреНрд▓рдЧрд┐рди"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЬрд┐рдпреЛрд▓реЛрдХреЗрд╢рди 4.0.1 "рдЬрд┐рдпреЛрд▓реЛрдХреЗрд╢рди"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЧреВрдЧрд▓рдореИрдкреНрд╕ 2.6.3-20190614-1928 "рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЧреВрдЧрд▓рдореИрдкреНрд╕"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЖрдпрдирд┐рдХ-рдХреАрдмреЛрд░реНрдб 2.1.3 "рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЖрдпрдирд┐рдХ-рдХреАрдмреЛрд░реНрдб"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЖрдпрдирд┐рдХ-рд╡реЗрдмрд╡реНрдпреВ 2.5.0 "рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдЖрдпрдирд┐рдХ-рд╡реЗрдмрд╡реНрдпреВ"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рд╕реНрдХреНрд░реАрди-рдУрд░рд┐рдПрдВрдЯреЗрд╢рди 3.0.1 "рд╕реНрдХреНрд░реАрди рдУрд░рд┐рдПрдВрдЯреЗрд╢рди"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рд╕реНрдкреНрд▓реИрд╢рд╕реНрдХреНрд░реАрди 5.0.2 "рд╕реНрдкреНрд▓реИрд╢рд╕реНрдХреНрд░реАрди"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рд╕реНрдЯреЗрдЯрд╕рдмрд╛рд░ 2.4.2 "рд╕реНрдЯреЗрдЯрд╕рдмрд╛рд░"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рд╢реНрд╡реЗрддрд╕реВрдЪреА 1.3.3 "рд╢реНрд╡реЗрддрд╕реВрдЪреА"
рдХреЙрд░реНрдбреЛрд╡рд╛-рдПрд╕рдХреНрд▓рд╛рдЗрдЯ-рд╕реНрдЯреЛрд░реЗрдЬ 3.2.0 "рдХреЙрд░реНрдбреЛрд╡рд╛ рдПрд╕рдХреНрд▓рд╛рдЗрдЯ рд╕реНрдЯреЛрд░реЗрдЬ рдкреНрд▓рдЧрдЗрди - рдХреЙрд░реНрдбреЛрд╡рд╛-рд╕реНрдХреНрд▓рд╛рдЗрдЯ-рд╕реНрдЯреЛрд░реЗрдЬ рдкреНрд▓рдЧрдЗрди рд╕рдВрд╕реНрдХрд░рдг"
es6-рд╡рд╛рджрд╛-рдкреНрд▓рдЧрдЗрди 4.2.2 "рд╡рд╛рджрд╛"
info.protonet.imageresizer 0.1.1 "рдЗрдореЗрдЬ рд░рд┐рд╕рд╛рдЗрдЬрд╝рд░"
onesignal-рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди 2.4.7 "OneSignal рдкреБрд╢ рд╕реВрдЪрдирд╛рдПрдВ"

рдореБрдЭреЗ error: cannot find symbol class NotificationManagerCompat рд▓рд┐рдП рднреА рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд░рд╣реА рд╣реИред рдореБрдЭреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рджреЗрдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред рдореИрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╡рд┐рдЬрдкрд╛рдВрдбрд╛ рдХрд╛рдВрдЯрд╛ рд╕реЗ рджреВрд░ рд╣реВрдВред

рдореИрдВрдиреЗ рджреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рд╣реИ

ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

рдореЗрд░рд╛ рднреА рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ рдЬреЛ рдореЗрд░реЗ рдРрдк рдХреЛ рдЕрдиреБрдкрдпреЛрдЧреА рдмрдирд╛рддреА рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд▓рдЧрдЗрдиреНрд╕ рд╕реБрд▓рдн рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдЬреЛрдбрд╝рд╛ рд╣реИред рдЕрд╕рд▓ рдореЗрдВ рдПрдбреАрдмреА рд▓реЙрдЧрдХреИрдЯ рдлреЗрдВрдХрддрд╛ рд╣реИ:
AndroidProtocolHandler: Unable to open asset URL: file:///android_asset/www/cordova_plugins.js
рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдмрдирд╛рдпрд╛ рд╣реИред рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреЛ рдЧрдпрд╛ред

@AurumLinux рдЖрдкрдХреЛ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдРрдк рдХреЛ рдЪрд░рдгрдмрджреНрдз рддрд░реАрдХреЗ рд╕реЗ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП ...
рдЬрдм рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдореМрдЬреВрджрд╛ рдкреБрд░рд╛рдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рддреЛ рдореБрдЭреЗ рднреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдореЗрдВ рджрдлрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рдереА рдХрд┐ рдореИрдВ рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдбрдореЛрдмрдкреНрд░реЛ рдХреЗ рдмрдЬрд╛рдп рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдбрдореЛрдмрдкреНрд░реЛ-рдлрд╛рдпрд░рдмреЗрд╕ рдкреНрд▓рдЧрдЗрди рдЬреЛрдбрд╝ рд░рд╣рд╛ рдерд╛ред рдЕрдм рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред

рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдлрд╛рдпрд░рдмреЗрд╕ -> src -> android -> build.gradle рдЪреЗрдВрдЬ рд▓рд╛рдЗрди рдирдВрдмрд░ 20 com.googleред firebase:firebase-auth :+ рд╕реЗ com.google. рдлрд╛рдпрд░рдмреЗрд╕: рдлрд╛рдпрд░рдмреЗрд╕-рдСрде : 16.2.1

рдЗрд╕рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

рдЖрдпрдирд┐рдХ рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдб рдЬреЛрдбрд╝реЗрдВx
рдЖрдпрдирд┐рдХ рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдбрдПрдХреНрд╕-рдПрдбрд╛рдкреНрдЯрд░ рдЬреЛрдбрд╝реЗрдВ

рдЗрд╕рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

рдЖрдпрдирд┐рдХ рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдб рдЬреЛрдбрд╝реЗрдВx
рдЖрдпрдирд┐рдХ рдХреЙрд░реНрдбреЛрд╡рд╛ рдкреНрд▓рдЧрдЗрди рдХреЙрд░реНрдбреЛрд╡рд╛-рдкреНрд▓рдЧрдЗрди-рдПрдВрдбреНрд░реЙрдЗрдбрдПрдХреНрд╕-рдПрдбрд╛рдкреНрдЯрд░ рдЬреЛрдбрд╝реЗрдВ

@fvadouko рдЖрдк рдХрд┐рд╕ рдПрдВрдбреНрд░реЙрдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? 7.1 рдпрд╛ 8.0? рдХреЛрдИ рдЕрдиреНрдп рд╕рдВрдЧрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдпрд╛ рдлрд┐рдХреНрд╕?

@AurumLinux рдЖрдкрдХреЛ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдРрдк рдХреЛ рдЪрд░рдгрдмрджреНрдз рддрд░реАрдХреЗ рд╕реЗ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП ...
рдЬрдм рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдореМрдЬреВрджрд╛ рдкреБрд░рд╛рдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рддреЛ рдореБрдЭреЗ рднреА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдореЗрдВ рджрдлрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдореИрдВ рдХреБрдЫ рджрд┐рдиреЛрдВ рд╕реЗ рдЗрд╕ рдмрдЧ рд╕реЗ рдЬреВрдЭ рд░рд╣рд╛ рд╣реВрдВред рдПрдХ рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ рд▓рд┐рдВрдХ рдХреА рдЧрдИ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдХрд╛рдВрдЯреЗ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛, рддреЛ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░ рдЧрдпрд╛

рд╕рдорд╛рдзрд╛рди рдореИрдВрдиреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд▓рд┐рдпрд╛ рд╣реИ #1081 (рдЯрд┐рдкреНрдкрдгреА)

  1. рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ build-extras.gradle рдбрд╛рд▓реЗрдВ
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. рдЗрд╕ рд╣реБрдХ рдХреЛрдб рдХреЛ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбрд╛рд▓реЗрдВ/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЕрдВрджрд░ config.xml рдореЗрдВ рд╣реБрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. рд╣реБрдХ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
cordova platform rm android
cordova platform add android

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдЧреА

рд╢реАрд░реНрд╖

рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝ рд░рд╣рд╛ рд╣реИ, рдорджрдж рдЪрд╛рд╣рд┐рдП
https://github.com/arnesson/cordova-plugin-firebase/issues/1089

рдзрдиреНрдпрд╡рд╛рдж @igorkurochka рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореИрдВ рдЗрд╕рд╕реЗ рдЬреВрдЭ рд░рд╣рд╛ рдерд╛ред

рдореБрдЭреЗ рд╕рдорд╕реНрдпрд╛ рд╣реИ
FirebasePlugin.java:365: error: cannot find symbol

@igorkurochka рдХреЛ рдзрдиреНрдпрд╡рд╛рджред рдЗрд╕рдиреЗ рдореЗрд░реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ред

@igorkurochka рдиреЗ рдпрд╣рд╛рдВ рднреА рдХрд╛рдо рдХрд┐рдпрд╛ рдзрдиреНрдпрд╡рд╛рдж

рд╕рдорд╛рдзрд╛рди рдореИрдВрдиреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд▓рд┐рдпрд╛ рд╣реИ #1081 (рдЯрд┐рдкреНрдкрдгреА)

1. put `build-extras.gradle` in your project root
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
1. put this hook code in your scripts/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
1. configure hook in config.xml inside android platform
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
1. reinstall platform to activate the hook
cordova platform rm android
cordova platform add android

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдЧреА

рдПрдХ рдЬрд╛рджреВ рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд┐рдпрд╛ :)ред рд╢рд╛рдирджрд╛рд░ рд╕рдорд╛рдзрд╛рдиред

рд╕рдорд╛рдзрд╛рди рдореИрдВрдиреЗ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рд▓рд┐рдпрд╛ рд╣реИ #1081 (рдЯрд┐рдкреНрдкрдгреА)

  1. рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдореЗрдВ build-extras.gradle рдбрд╛рд▓реЗрдВ
def dependencyMap = [
        "com.google.firebase:firebase-core": "16.0.8",
        "com.google.firebase:firebase-iid": "17.1.1",
        "com.google.firebase:firebase-messaging": "17.5.0",
        "com.google.firebase:firebase-config": "16.4.0",
        "com.google.firebase:firebase-perf": "16.2.4",
        "com.google.android.gms:play-services-tagmanager": "16.0.8",
        "com.google.firebase:firebase-auth": "16.2.0"
]

allprojects {
    repositories {
            google()
            jcenter()
            mavenLocal()
    }

    configurations.all {

        resolutionStrategy {

            eachDependency { DependencyResolveDetails details ->
                def group = details.requested.group
                def name = details.requested.name
                def fullName =  group + ":" + name
                print fullName
                if (dependencyMap.containsKey(fullName)) {
                    details.useVersion dependencyMap[fullName]
                }
            }
        }
    }

}
  1. рдЗрд╕ рд╣реБрдХ рдХреЛрдб рдХреЛ рдЕрдкрдиреА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рдбрд╛рд▓реЗрдВ/copy_build_extra.js
#!/usr/bin/env node

const fs = require('fs')
fs.copyFileSync("./build-extras.gradle", "./platforms/android/build-extras.gradle");
  1. рдПрдВрдбреНрд░реЙрдЗрдб рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЕрдВрджрд░ config.xml рдореЗрдВ рд╣реБрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ
<platform name="android">
  <hook src="scripts/copy_build_extra.js" type="after_prepare" />
</platform>
  1. рд╣реБрдХ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ
cordova platform rm android
cordova platform add android

рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЖрд╢рд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдЧреА

рдирдорд╕реНрддреЗ, рдереЛрдбрд╝реА рджреЗрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдЕрдорд╛рдиреНрдп рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХреА: рд╢реВрдиреНрдп рд╕рдорд╕реНрдпрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдПрдХ рдирдпрд╛ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛:

* What went wrong:
Could not determine the dependencies of task ':app:compileDebugJavaWithJavac'.
The library com.google.android.gms:play-services-analytics-impl is being requested by various other libraries at [[16.0.8,16.0.8], [17.0.0,17.0.0]], but resolves to 17.0.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

рдЕрдЧрд░ рдореИрдВ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП 3 рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ (play-services-analytics-impl, play-services-analytics рдФрд░ play-services-tagmanager-v4-impl) рдХреЛ 16.0.8 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдореБрдЭреЗ " Crashlytics рдорд┐рд▓рд╛ рдПрдХ рдЕрдорд╛рдиреНрдп рдПрдкреАрдЖрдИ рдХреБрдВрдЬреА: рд╢реВрдиреНрдпред" рдлрд┐рд░ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЕрдЧрд░ рдореИрдВ "com.google.android. gms:play-services-tagmanager " рдХреЛ 17.0.0 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рд╡рд╣реА рд╕рдВрджреЗрд╢ рдорд┐рд▓рддрд╛ рд╣реИ

рдХреЛрдИ рдорджрдж?

рдпрд╣рд╛рдБ рдореЗрд░реА config.xml рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ
<platform name="android"> <allow-intent href="market:*" /> <hook src="hooks/android_build_extra.js" type="after_prepare" /> </platform> <platform name="ios"> <allow-intent href="itms:*" /> <allow-intent href="itms-apps:*" /> </platform> <platform name="android"> <preference name="android-minSdkVersion" value="19" /> <preference name="android-installLocation" value="auto" /> <preference name="disallowOverscroll" value="true" /> </platform> <platform name="ios"> </platform> <plugin name="cordova-plugin-device" spec="^2.0.2" /> <plugin name="cordova-plugin-globalization" spec="1.11.0" /> <plugin name="cordova-plugin-google-analytics" spec="1.8.6" /> <plugin name="cordova-plugin-inappbrowser" spec="3.0.0" /> <plugin name="cordova-plugin-splashscreen" spec="5.0.3" /> <plugin name="cordova-plugin-statusbar" spec="2.4.3" /> <plugin name="cordova-plugin-whitelist" spec="1.3.4" /> <plugin name="cordova-plugin-network-information" spec="2.0.2" /> <plugin name="com.lampa.startapp" spec="6.1.6" /> <plugin name="cordova-plugin-firebase" spec="2.0.5" /> <plugin name="cordova-android-play-services-gradle-release" spec="^4.0.0"> <variable name="PLAY_SERVICES_VERSION" value="11.0.+" /> </plugin> <plugin name="cordova-android-firebase-gradle-release" spec="^4.0.0"> <variable name="FIREBASE_VERSION" value="11.0.+" /> </plugin> <plugin name="cordova-android-support-gradle-release" spec="3.0.1"> <variable name="ANDROID_SUPPORT_VERSION" value="26.+" /> </plugin>

рдЙрд╕ рдкрд░ рдХреЛрдИ рдорджрдж?

рдзрдиреНрдпрд╡рд╛рдж,

рд╕рд░реНрдЧрд┐

рдореИрдВрдиреЗ рджреЛ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рдореБрджреНрджреЛрдВ рдХреЛ рдареАрдХ рдХрд┐рдпрд╛ рд╣реИ

ionic cordova plugin add cordova-plugin-androidx
ionic cordova plugin add cordova-plugin-androidx-adapter

рджреЛрд╕реНрдд рдмрд╣реБрдд - рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж!!

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

michaelreiser picture michaelreiser  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

eilian92 picture eilian92  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Zrnik picture Zrnik  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

merbin2012 picture merbin2012  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

chrissterling picture chrissterling  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ