Π‘: https://firebase.google.com/support/releases 20 ΠΌΠ°ΡΡΠ°.
ΠΡΠΈΠ±ΠΊΠ°
AndroidRuntime: java.lang.NoSuchMethodError: Π½Π΅Ρ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° zza (Ljava / lang / Object; Ljava / lang / Object;) Ljava / lang / Object; Π² ΠΊΠ»Π°ΡΡΠ΅ Lcom / google / android / gms / common / internal / zzbq; ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΡΡΠΏΠ΅ΡΠΊΠ»Π°ΡΡΡ (ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ com.google.android.gms.common.internal.zzbq
ΡΡΠΎ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
ΠΡΠΈΠ²Π΅Ρ, Ρ ΠΌΠ΅Π½Ρ Π΄ΡΡΠ³Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ° ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ firebase. ΠΠΎΠ³Π΄Π° Ρ ΠΏΠ΅ΡΠ°ΡΠ°Ρ:
cordova build android
Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΠ°ΠΊΠΎΠΉ Π²ΡΠ²ΠΎΠ΄:
Π‘ΠΠΠ Π‘ΠΠΠΠΠ’Π¬
ΠΠ±ΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ: 4.529 ΡΠ΅ΠΊ.
ΠΠ¨ΠΠΠΠ: ΡΠ±ΠΎΠΉ ΠΏΡΠΈ ΡΠ±ΠΎΡΠΊΠ΅ Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ.
Π― ΠΈΡΠΊΠ°Π» ΠΎΡΠ²Π΅Ρ Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅, Π½ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠ΅ ΠΌΠ½ΠΎΠΉ ΡΠ΅ΡΠ΅Π½ΠΈΡ ( ΡΠ΅ΡΠ΅Π½ΠΈΠ΅2 , ΡΠ΅ΡΠ΅Π½ΠΈΠ΅3 ) ΠΌΠ½Π΅ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ .
ΠΡΠΈΠ±ΠΊΠ°, ΠΏΠΎΡ ΠΎΠΆΠ΅, ΡΠ²ΡΠ·Π°Π½Π° Ρ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ Play Services . Π― Π½Π΅ ΠΌΠΎΠ³Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Android, ΠΏΠΎΠΊΠ° Π½Π΅ ΡΠ΄Π°Π»Ρ ΡΡΠΎΡ ΠΏΠ»Π°Π³ΠΈΠ½.
Π― Π½Π°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΡΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ² ΠΏΠ»Π°Π³ΠΈΠ½ ΡΠ½ΠΎΠ²Π°.
Π΅ΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅, ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ ΡΠ»ΡΠΆΠ± ΠΈ firebase Π½Π° 11.8.0.
ΠΊΠ°ΠΊ:
ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ ΡΡΠΎ Π²Π½ΡΡΡΡ
<hook src="fixFirebasePlugin.js" type="before_build" />
ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» JS Π² ΠΊΠΎΡΠ½Π΅ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
module.exports = function(context) {
var fs = require('fs');
var path = require('path');
var rootdir = context.opts.projectRoot;
var platformDir = 'platforms/android';
//change the path to your external gradle file
var srcFile = path.join(rootdir, 'src/android/build-extras.gradle');
var destFile = path.join(rootdir, platformDir, 'build-extras.gradle');
console.log("copying "+srcFile+" to "+destFile);
fs.createReadStream(srcFile).pipe(fs.createWriteStream(destFile));
}
Π²Π½ΡΡΡΠΈ ΠΏΠ°ΠΏΠΊΠΈ src ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ Android ΠΈ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π²Π½ΡΡΡΠΈ Π½Π΅Π΅ ΡΠ°ΠΉΠ» build-extras.gradle Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ:
configurations.all {
resolutionStrategy {
force "com.google.android.gms:play-services-ads:11.8.0"
force "com.google.android.gms:play-services-base:11.8.0"
force "com.google.android.gms:play-services-gcm:11.8.0"
force "com.google.android.gms:play-services-analytics:11.8.0"
force "com.google.android.gms:play-services-location:11.8.0"
force "com.google.android.gms:play-services-basement:11.8.0"
force "com.google.android.gms:play-services-tagmanager:11.8.0"
force 'com.google.firebase:firebase-core:11.8.0'
force 'com.google.firebase:firebase-crash:11.8.0'
force 'com.google.firebase:firebase-auth:11.8.0'
force 'com.google.firebase:firebase-common:11.8.0'
force 'com.google.firebase:firebase-config:11.8.0'
force 'com.google.firebase:firebase-messaging:11.8.0'
}
}
ΡΠ΄Π°Π»ΠΈΡΠ΅ ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ (ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ Π½Π° 6.3.0), Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ±ΠΎΡΠΊΡ Android Cordova, ΠΈ ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ.
ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ run / build --prod, ΠΊΠ°ΠΊ Ρ ΠΎΡΠΈΡΠ΅.
@tryadelion , Ρ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π» Π²Π°ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π²Ρ ΡΠΏΠΎΠΌΡΠ½ΡΠ»ΠΈ, Π½ΠΎ Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅ ΠΎΡΠΈΠ±ΠΊΠ° Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ :(
Π²Ρ ΡΠ΄Π°Π»ΠΈΠ»ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ, ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ ΠΊΠ°ΠΊ [email protected] ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ "~: cordova build android", Π±Π΅Π· prod, Π±Π΅Π· Π·Π°ΠΏΡΡΠΊΠ°, Π±Π΅Π· ionic? Π²ΠΎΡ ΡΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π»ΠΎ ΠΌΠ½Π΅!
ΠΠ°, Ρ ΡΠ΄Π΅Π»Π°Π» Π²ΡΠ΅ (config.xml, fixFirebasePlugin.js, build-extras.gradle, platform [email protected]), Π½ΠΎ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΏΡΡΠΊΠ° ΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΡ Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡ, Π΄Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π΅ ΠΈΠΎΠ½Π½ΡΠΉ, Ρ Π½Π΅ Π·Π½Π°Ρ, ΠΌΠΎΠΆΠ΅Ρ Π»ΠΈ ΡΡΠΎ ΠΈΠΌΠ΅ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
ΠΏΡΠΎΠ±ΠΎΠ²Π°Π»ΠΈ Π»ΠΈ Π²Ρ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ "ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ" ΠΊ ΡΡΠΎΠΌΡ? Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΡΡΠ½ΡΡ ΠΌΠ΅Π½ΡΡΡ Π²Π΅ΡΡΠΈΠΈ Π² XML ΠΏΠ»Π°Π³ΠΈΠ½Π°? ΠΠ½Π΅ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π΅Π³ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Ρ ΠΈΡΠΏΠΎΡΡΠΈΠ» ΡΠ°ΠΉΠ»Ρ. ΠΠΎ ΡΠΈΡ ΠΏΠΎΡ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π» Π½Π°Π΄ 3 ΡΠ°Π·Π½ΡΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ, Π²ΡΠ΅ ΠΈΠΎΠ½Π½ΡΠ΅, Π½ΠΎ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΊΡΡΡΠΊΠΎΠ² ΡΠ°ΠΊΠ°Ρ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ Π½Π΅Π³ΠΎ Ρ ΠΊΠΎΡΠ΄ΠΎΠ²ΡΠΌ ΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ.
ΠΠΎ ΡΡΠΎΠ³ΠΎ Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» ΡΠΎΠ»ΡΠΊΠΎ /platforms/android/project.properties ΠΈ /platforms/android/build.gradle, Π½ΠΎ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Ρ ΡΠ΄Π°Π»ΠΈΠ» ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΏΠ»Π°Π³ΠΈΠ½ (ΡΠ½Π°ΡΠ°Π»Π°) ΠΈ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ [email protected]. (ΠΏΠΎΡΠ»Π΅).
Π― Π½Π΅ Π·Π½Π°Ρ, Π² ΡΠ΅ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΠΈΠ½Π° ΡΠ±ΠΎΡ, Π½ΠΎ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Ρ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΡΠ΅ Π΅ΡΠ΅ Π΅ΡΡΡ ΠΎΠ±Π΅ Π²Π΅ΡΡΠΈΠΈ: 12.0 ΠΈ 11.8.0, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Ρ Π²ΠΈΠΆΡ ΡΡΠΎ:
ΠΠ΅ Π·Π½Π°Ρ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π²Π΅ΡΡΠΈΡ 12.0.0.
ΡΠ΄Π°Π»ΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΡΠ·Π»ΠΎΠ², ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ / android, ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠ΅ ΡΠ»ΡΠΆΠ±Ρ, Π² / plugins, NPM i, ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π²ΡΠ΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΠ΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ android ΠΈ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΏΠΎΠΏΡΡΠΊΡ. Π²ΠΎΡ ΡΡΠΎ Ρ Π±Ρ ΡΠ΄Π΅Π»Π°Π».
Π₯ΠΎΡΠΎΡΠΎ, Ρ ΠΏΠΎΠΏΡΠΎΠ±ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π²ΡΠ΅ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ΡΡ Ρ ΠΌΠ΅Π½Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. ΠΠΎΠ»ΡΡΠΎΠ΅ ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΠ°ΡΡ ΠΏΠΎΠΌΠΎΡΡ!!
@tryadelion Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΠΎΠ΄Π΅Π»ΠΈΠ»ΠΈΡΡ. Π― ΡΠΎΠ±ΠΈΡΠ°Π»ΡΡ ΡΠΎΡΠΊΠΈΡΡ cordova-plugin-firebase ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π΅ΡΡΠΈΠΈ. Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π» Π²Π°ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅.
ΠΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ [email protected], ΠΊΠΎΡΠΎΡΡΠΉ
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Ρ ΡΠ΅ΡΠΈΠ» ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ² ΡΠ°ΠΉΠ» /platforms/android/build.gradle ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
allprojects {
repositories {
// Temp fix for com.google.android.gms.license
// Added from here
configurations.all {
resolutionStrategy {
// Put your gms packages here with 11.8.0 attached
force "com.google.android.gms:play-services-analytics:11.8.0"
force "com.google.android.gms:play-services-auth:11.8.0"
force "com.google.android.gms:play-services-gcm:11.8.0"
force "com.google.android.gms:play-services-location:11.8.0"
}
}
// until here
jcenter()
maven {
url "https://maven.google.com"
}
}
}
(Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΠΈΡΠ°Π½ΠΎ Ρ https://github.com/facebook/react-native/issues/18479)
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π΅ΡΠ΅ ΡΠ°Π·!
ΠΠ»Ρ Ionic v1.1.0
ΠΈ cordova-plugin-firebase v0.1.25
ΡΡΠΎΡ Ρ
ΡΠΊ ΡΠ΅ΡΠΈΠ» ΠΌΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
//before_build/010_add_gradle_extras.js
#!/usr/bin/env node
var fs = require('fs');
var path = require('path');
var rootdir = process.argv[2];
var platformDir = 'platforms/android';
var srcfile = path.join(rootdir, 'build-extras.gradle');
var destfile = path.join(rootdir, platformDir, 'build-extras.gradle');
var destdir = path.dirname(destfile);
if (fs.existsSync(srcfile) && fs.existsSync(destdir)) {
fs.createReadStream(srcfile).pipe(fs.createWriteStream(destfile));
process.stdout.write('Hook: build-extras.gradle added');
}
//build-extras.gradle
configurations.all {
resolutionStrategy {
force "com.google.android.gms:play-services-ads:11.8.0"
force "com.google.android.gms:play-services-base:11.8.0"
force "com.google.android.gms:play-services-gcm:11.8.0"
force "com.google.android.gms:play-services-analytics:11.8.0"
force "com.google.android.gms:play-services-location:11.8.0"
force "com.google.android.gms:play-services-basement:11.8.0"
force "com.google.android.gms:play-services-tagmanager:11.8.0"
force 'com.google.firebase:firebase-core:11.8.0'
force 'com.google.firebase:firebase-crash:11.8.0'
force 'com.google.firebase:firebase-auth:11.8.0'
force 'com.google.firebase:firebase-common:11.8.0'
force 'com.google.firebase:firebase-config:11.8.0'
force 'com.google.firebase:firebase-messaging:11.8.0'
}
}
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ Android ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ»ΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΡΠ°ΠΊΡΠΎΡΠΎΠΌ.
@tryadelion , Π΅ΡΡΡ ΠΈΠ΄Π΅ΠΈ, ΠΏΠΎΡΠ΅ΠΌΡ Ρ ΠΏΠΎΠ»ΡΡΠ°Ρ ΡΡΡ ΠΎΡΠΈΠ±ΠΊΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΠ±ΡΡ Π²Π°Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄?
A problem occurred configuring root project 'android'.
> Could not resolve all dependencies for configuration ':_debugApkCopy'.
> Could not find com.google.gms:google-services:11.8.0.
Required by:
project :
Π― ΡΠ΄Π΅Π»Π°Π» ΡΠΎ, ΡΡΠΎ ΡΠΊΠ°Π·Π°Π» ΠΠΆΠΎΡΠ΅ΡΠ΅Ρ, ΠΈ ΡΡΠΎ Π·Π°ΡΡΠ°Π²ΠΈΠ»ΠΎ ΡΠ±ΠΎΡΠΊΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΠ°ΡΡ. ΠΡΠ±Π°Ρ ΠΈΠ΄Π΅Ρ?
ΠΠΎΠ³ΡΡΠ·ΠΈΠ²ΡΠΈΡΡ Π² ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΡΠΎ fetch Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ», ΡΡΠΎ ΡΡΠΎ ΠΈΠ·-Π·Π° ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ fetch:
ΠΡΠ·Π²Π°Π½ΠΎ: java.lang.ClassNotFoundException: Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ Π½Π°ΠΉΡΠΈ ΠΊΠ»Π°ΡΡ "android.support.v4.util.ArraySet" Π½Π° ΠΏΡΡΠΈ: DexPathList
ΠΡΠ±Π°Ρ ΠΈΠ΄Π΅Ρ?
@remisture Π£ ΠΌΠ΅Π½Ρ ΡΡΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π°, ΠΊΠΎΠ³Π΄Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΠΉΠ» gradle Π²ΡΠ΅ Π΅ΡΠ΅ ΡΡΡΠ»Π°Π»ΡΡ Π½Π° 12.X, ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΎΡΠΈΡΡΠΊΡ ΡΠ±ΠΎΡΠΊΠΈ.
Π Π΅ΡΠΈΠ» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ platforms/android/build.gradle
ΠΠΎ
allprojects {
repositories {
jcenter()
maven {
url "https://maven.google.com"
}
}
}
ΠΠΎΡΠ»Π΅:
allprojects {
repositories {
//start here
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.google.android.gms') {
details.useVersion '11.8.0'
}
if (requested.group == 'com.google.firebase') {
details.useVersion '11.8.0'
}
}
}
//end
jcenter()
maven {
url "https://maven.google.com"
}
}
}
ΠΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ Π½Π° [email protected]
ΠΠΈΠΆΠ΅ Π²Π΅ΡΡ ΠΌΠΎΠΉ build.gradle. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ Π±ΠΈΡ Π² ΠΊΠΎΠ½ΡΠ΅ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ sdk ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
buildscript {
repositories {
jcenter()
google()
mavenLocal()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.google.android.gms') {
details.useVersion '12.0.1'
}
}
}
mavenLocal()
jcenter()
maven {
url "https://jitpack.io"
}
maven {
url 'https://maven.google.com'
}
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url "$rootDir/../node_modules/react-native/android"
}
}
}
subprojects {
afterEvaluate {project ->
if (project.hasProperty("android")) {
android {
compileSdkVersion 26
buildToolsVersion '26.0.2'
}
}
}
}
ΠΏΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΎ ΠΏΡΡΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ cordova-android-play-services-gradle-release
@ soumak77, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΡΠΏΠ°ΡΠΈΠ±ΠΎ
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
Π Π΅ΡΠΈΠ» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ
platforms/android/build.gradle
ΠΠΎ
ΠΠΎΡΠ»Π΅:
ΠΡΠΎΠ²Π΅ΡΠ΅Π½ΠΎ Π½Π° [email protected]