This library is using on Android com.google.firebase:firebase-core dependency, but I can not find any imports from firebase packages.
So what is the reason for importing Firebase core dependency?
This is a burning question I have as well because this dependency is causing me major issues that I'm not sure where to start to resolve.
Very interesting, why does this lib need firebase-core? Possibly the most creative way of hijacking CCs
@ngoryachev do you have idea about this Firebase usage, looks like your pr introduces Firebase usage https://github.com/tipsi/tipsi-stripe/pull/256?
It looks to me like this was a mistake in the docs/example project. When using react-native link my podfile looks like this:
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'mobilev2' do
pod 'Stripe', '~> 13.2.0'
inherit! :search_paths
end
And it is working just fine.
@wmlutz this unnecessary(?) Firebase is included in android buid.gradle. Pods are used only for ios.
I assume it has something to do with Google Wallet on Android. I can't really tell, TBH, but some clarity would be much appreciated because it's the single reason I cannot upgrade other dependencies in my project.
@hannta / @rahsheen what is the exact issue with firebase.
There are 2 possible options I see:
Regarding second point, you can force desirable versions in your build.gradle file:
allprojects {
repositories {
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
// Add jitpack repository (added by tipsi-stripe)
maven { url "https://jitpack.io" }
// Add fabric repository (added by tipsi-twitter)
maven { url "https://maven.fabric.io/public" }
mavenLocal()
jcenter()
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url "$rootDir/../node_modules/react-native/android"
}
configurations.all {
// #PlayServicesGate — March, 20 2018
resolutionStrategy {
force 'com.google.firebase:firebase-core:16.0.4'
// force 'com.google.firebase:firebase-analytics:17.3.4'
force 'com.google.firebase:firebase-iid:17.0.4'
force 'com.google.firebase:firebase-messaging:17.3.4'
force 'com.google.android.gms:play-services-base:16.0.1'
force 'com.google.android.gms:play-services-maps:16.0.0'
force 'com.google.android.gms:play-services-wallet:16.0.1'
force 'com.google.android.gms:play-services-vision:11.8.0'
// #FBSDKGate — August, 31 2018
force 'com.facebook.android:facebook-android-sdk:4.34.0'
}
}
}
This is what we're using internally and it works for android.
Regarding first point - I'm not sure if you can have payments with android pay without firebase. Possibly this can be done but this require some additional research and we cannot switch to this right now
@cybergrind thanks for the clarification, my original question was to ask why the Firebase lib is included in this lib as looks like it is not used at all.
Im using Firebase in my app, and i do not have issues for using it :)
any update to this? Are the Firebase pods necessary when linking?
@kaloncheung124 I've applied some PRs from here (basev8.beta9), also removed firebase as dependency from android, and bumped Stripe SDK to most recent one. You can check my fork here (last 2 commits): https://github.com/appsbakery/tipsi-stripe/commits/master
You can apply those patches with patch-package or use my fork...
Also if you want to use most recent stripe ios sdk, you have to set platform :ios, '10.0'
So, it seems to works fine without firebase, But I did not tried google wallet integration yet...
Most helpful comment
@hannta / @rahsheen what is the exact issue with firebase.
There are 2 possible options I see:
Regarding second point, you can force desirable versions in your
build.gradlefile:This is what we're using internally and it works for android.
Regarding first point - I'm not sure if you can have payments with android pay without firebase. Possibly this can be done but this require some additional research and we cannot switch to this right now