imperiumlabs / GeoFirestore-Android

GeoFirestore for Android - Realtime location queries with Firestore
MIT License
123 stars 36 forks source link

Incompatibility with firestore 18.0.0 #13

Closed mirdones closed 5 years ago

mirdones commented 5 years ago

I updated firestore to version 18.0.0.

Now I am getting the following error:

java.lang.NoSuchMethodError: No virtual method set(Ljava/util/Map;Lcom/google/firebase/firestore/SetOptions;)Lcom/google/android/gms/tasks/Task; in class Lcom/google/firebase/firestore/DocumentReference; or its super classes (declaration of 'com.google.firebase.firestore.DocumentReference' at org.imperiumlabs.geofirestore.GeoFirestore.setLocation(GeoFirestore.java:128)

tomergoldst commented 5 years ago

Also have issues with version 18.0.0

In project 'app' a resolved Google Play services library dependency depends on another at an exact version (e.g. "[15.0. 1]", but isn't being resolved to that version. Behavior exhibited by the library will be unknown.

Dependency failing: com.google.android.gms:play-services-stats:15.0.1 -> com.google.android.gms:play-services-basement@[ 15.0.1], but play-services-basement version was 16.0.1.

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.firebase:firebase-firestore@18.0.0 -- Project 'app' depends onto com.google.firebase:firebase-core@16.0.1 -- Project 'app' depends onto com.google.android.gms:play-services-places@16.0.0 -- Project 'app' depends onto com.google.firebase:firebase-measurement-connector-impl@16.0.1 -- Project 'app' depends onto com.google.firebase:firebase-common@16.0.4 -- Project 'app' depends onto com.google.firebase:firebase-measurement-connector@16.0.0 -- Project 'app' depends onto com.google.android.gms:play-services-basement@16.0.1 -- Project 'app' depends onto com.google.android.gms:play-services-ads-identifier@15.0.1 -- Project 'app' depends onto com.google.firebase:firebase-auth-interop@16.0.1 -- Project 'app' depends onto com.google.android.gms:play-services-places-placereport@16.0.0 -- Project 'app' depends onto com.google.firebase:firebase-iid@16.0.0 -- Project 'app' depends onto com.google.android.gms:play-services-tasks@16.0.1 -- Project 'app' depends onto com.google.firebase:firebase-analytics@16.0.1 -- Project 'app' depends onto com.google.firebase:firebase-iid-interop@16.0.0 -- Project 'app' depends onto com.google.android.gms:play-services-base@16.0.1 -- Project 'app' depends onto com.google.firebase:firebase-analytics-impl@16.1.1 -- Project 'app' depends onto com.google.android.gms:play-services-maps@16.0.0 -- Project 'app' depends onto com.google.android.gms:play-services-stats@15.0.1 -- Project 'app' depends onto com.github.imperiumlabs:GeoFirestore-Android@v1.1.1

5nicolai commented 5 years ago

i hope this error will be fixed

zoro238 commented 5 years ago

same problem

zoro238 commented 5 years ago

what sloved ?

zoro238 commented 5 years ago

i am used version 18.0.1

future-pirate-king commented 5 years ago

this problem got resolved when I downgraded the firestore version to 17.1.2

mirdones commented 5 years ago

this problem got resolved when I downgraded the firestore version to 17.1.2

That is not exactly solving the problem.

By the way, this library can work with Firestore up to 17.1.5

zoro238 commented 5 years ago

i tested same error with firestore version to 17.1.2 and 17.1.5

future-pirate-king commented 5 years ago

i tested same error with firestore version to 17.1.2 and 17.1.5

Share your app gradle configuration and the error you are facing.

zoro238 commented 5 years ago

apply plugin: 'com.android.application'

android {

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}
compileSdkVersion 28
defaultConfig {
    applicationId "com.2.cvcvbb"
    minSdkVersion 19
    targetSdkVersion 28
    versionCode 1
    versionName "1.0"
    multiDexEnabled true
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}

}

dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) //noinspection GradleCompatible implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support:design:28.0.0' implementation 'com.github.imperiumlabs:GeoFirestore-Android:v1.1.1' implementation 'com.android.support:multidex:1.0.3' implementation 'com.google.android.gms:play-services-location:16.0.0' implementation 'com.google.firebase:firebase-core:16.0.7' implementation 'com.h6ah4i.android.widget.verticalseekbar:verticalseekbar:1.0.0' implementation 'com.firebase:geofire-android:2.3.1' implementation 'com.google.firebase:firebase-database:16.0.6' implementation 'com.google.firebase:firebase-firestore:16.0.0' implementation 'com.android.support:support-v4:28.0.0' implementation 'com.android.support.constraint:constraint-layout:1.1.3' implementation 'com.google.android.gms:play-services-maps:16.1.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' } apply plugin: 'com.google.gms.google-services'

zoro238 commented 5 years ago

and error

///' Now I am getting the following error:

java.lang.NoSuchMethodError: No virtual method set(Ljava/util/Map;Lcom/google/firebase/firestore/SetOptions;)Lcom/google/android/gms/tasks/Task; in class Lcom/google/firebase/firestore/DocumentReference; or its super classes (declaration of 'com.google.firebase.firestore.DocumentReference' at org.imperiumlabs.geofirestore.GeoFirestore.setLocation(GeoFirestore.java:128)

AngaKoko commented 5 years ago

I still get the error when I try removing GeoFirestore location using removeLocation("itemId") methos

nminhanh-git commented 5 years ago

I have this error with Firestore version 18.2.0 when using setLocation method

amitbd1508 commented 5 years ago

downgrade to 17.1.5 solved my problem.

KelvinPac commented 5 years ago

Is there no fix for this since January? Is the library still maintained?

AngaKoko commented 5 years ago

You can set location in using

GeoHash geoHash = new GeoHash(new GeoLocation(mGeoPoint.getLatitude(), mGeoPoint.getLongitude()));

map.put("g", geoHash.getGeoHashString()); map.put("l", Arrays.asList(mGeoPoint.getLatitude(), mGeoPoint.getLongitude()));

On Sat, 11 May 2019 at 03:40, Kelvin Murithi notifications@github.com wrote:

Is there no fix for this since January? Is the library still maintained?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/imperiumlabs/GeoFirestore-Android/issues/13#issuecomment-491472888, or mute the thread https://github.com/notifications/unsubscribe-auth/AG2X5Q5LCMB3F755RKVKK7DPUYWZBANCNFSM4GS3JARA .

scm573 commented 5 years ago

I think the incompatibility issue should has been resolved already. Try v1.2.0 or v1.2.1. (Currently the build of v1.3.0 is failing so you cannot import that version from JitPack directly: https://github.com/imperiumlabs/GeoFirestore-Android/issues/23)

KelvinPac commented 5 years ago

Why don't we have support for other queries as well. maybe also limits?

On Fri, May 17, 2019 at 3:16 AM scm573 notifications@github.com wrote:

I think the incompatibility issue should has been resolved already. Try v1.2.0 or v1.2.1. (Currently the build of v1.3.0 is failing so you cannot import that version from JitPack directly: #23 https://github.com/imperiumlabs/GeoFirestore-Android/issues/23)

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/imperiumlabs/GeoFirestore-Android/issues/13?email_source=notifications&email_token=AEISQE2OKNRFRVAP7TMTALDPVX2MFA5CNFSM4GS3JARKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGODVTMDUI#issuecomment-493273553, or mute the thread https://github.com/notifications/unsubscribe-auth/AEISQEZOQ2QY2FY5K537PK3PVX2MFANCNFSM4GS3JARA .

ParryPatel021 commented 5 years ago

I think the incompatibility issue should has been resolved already. Try v1.2.0 or v1.2.1. (Currently the build of v1.3.0 is failing so you cannot import that version from JitPack directly: #23)

This has resolved my problem by changing the version 1.2.1 as @scm573 told

Supercaly commented 5 years ago

This problem is present only in older versions of the library and is caused by depending in an older version of Firestore, this issue is solved using a version newer than v1.2.1. Follow the README.MD to import the current stable version of the library

mirmahfuz99 commented 5 years ago

upgrade to 19.0.0 solved my problem.