I'm implementing AppCheck in my app in order to prevent bad access to Firestore. I activated the service in Firebase Console and add this line await FirebaseAppCheck.instance.activate(); after Firebase initialization.
Now, if I try to access Firestore in my app through emulator it logs PERMISSION DENIED.
How could I develop updates for my app and continue testing while AppCheck is enabled?
After you have registered your app for App Check, your app normally won't run in an emulator or from a continuous integration (CI) environment, since those environments don't qualify as valid devices. If you want to run your app in such an environment during development and testing, you can create a debug build of your app that uses the App Check debug provider instead of a real attestation provider.
Refer documentation Flutter app Check details.
However, as per the documentation, the debug provider does not currently have a Dart API; you'll need to apply the changes separately for each of your platforms.
You may check the App Check debug provider available for other platforms like Apple, Web and Android.
Related
I implemented google login in flutter without using firebase in flutter (google cloud console). It was working in apk then later I needed push notification service for which I used firebase (fcm token and all) then I released the app to playstore but google login does not work. I keep getting apiexception error. Has anybody faced this issue? if yes any help would be highly appreciated.
I do not have a specific answer to your problem but I have also faced this problem once, I accidentally resolved it though.
But Error 12500 is a general error code that may occur when attempting to use the Google Sign-In feature and is caused by a few potensial issues:
An issue with the SHA-1 fingerprint of your app's signing
certificate: To use Google Sign-In, you need to configure your app's
SHA-1 fingerprint and package name in the Firebase console. Make
sure that the fingerprint and package name you have configured in
the Firebase console match the ones you are using to sign your app.
An issue with the Google Services configuration file: Make sure you
have properly added the Google Services configuration file to your
app.
An issue with the Google Play Services library: Make sure you have
the latest version of the Google Play Services library installed in
your app.
An issue with the device or emulator you are using: Make sure you
are testing on a device or emulator that has Google Play Services
installed and is up to date.
Possible fixes to try/check:
Double-check the SHA-1 fingerprint and package name: Make sure that
the SHA-1 fingerprint and package name you have configured in the
Firebase console match the ones you are using to sign your app.
Make sure you have added the Google Services configuration file: The
Google Services configuration file is required for your app to
communicate with Google services, including Google Sign-In. Make
sure you have properly added this file to your app.
Update the Google Play Services library: Make sure you have the
latest version of the Google Play Services library installed in your
app. You can check for updates by going to the "SDK Manager" in
Android Studio.
Test on a device or emulator with Google Play Services installed:
Make sure you are testing on a device or emulator that has Google
Play Services installed and is up to date.
I hope this helps! I will quickly search if I can find any other solution.
When trying to run Firebase Phone Authentication through a Virtual Android Device am getting the following error messages;
E/zzbf ( 6464): SafetyNet Attestation fails basic integrity.
I/zzmt ( 6464): Provider GmsCore_OpenSSL not available
W/System ( 6464): Ignoring header X-Firebase-Locale because its value was null.
Android Device Verification for the project is enabled through
Google Cloud Console; https://i.imgur.com/e1XWrWS.png
SHA-1 & SHA-256 is added to Firebase Project Settings; https://i.imgur.com/0PLnkzm.png
App level build.gradle has implementation "androidx.browser:browser:1.4.0" & implementation 'com.google.android.gms:play-services-safetynet:18.0.1; https://i.imgur.com/RPHS4Y1.png
I have investigated similar StackOverflow topics and tried the possible solutions but no luck. Running on a physical Android Device it runs fine but in Virtual Device I can't get past captcha verification.
Also when checking the SafetyNet documentation I saw that it's deprecated and it will be replaced by Play Integrity API.
Google Play Integrity API is enabled through Google Cloud Console; https://i.imgur.com/WctB3i8.png
App level build.gradle has implementation 'com.google.firebase:firebase-appcheck-playintegrity'; https://i.imgur.com/qr1LiZ4.png
Nothing I have mentioned helped me fix the error messages, any suggestions ?
UPDATE 1::
Found this place and added Firebase App Check dependency to my app, but does it actually have anything to do with it as my issue is still going on?
You can try with this, might help,
Make sure to re-download the google-services.json whenever you change the SHA keys in the Firebase console.
Check if the android emulator (ADB) target supports Google Services
Is it possible to have a "reserved" emualtor in the cloud where I can save the emulator state and re-access it?
I tried Browserstack however at each test run, the emulator that I use is brand new.
The problem with that is that each time I need to log in to the app which requires a 2 step verification with SMS. If I'm able to once log in to the app with my account and save the state (like what I can do with a local emulator with Android Studio), then I can launch my Appium tests in the future with no issue and be automatically log in my app account.
I have an ionic app build on my system.
For now, I have been testing my app using Ionic DevAPP (which can be found on the App Store and Google Play).
Prerequisite to run an app on my mobile device using Ionic DevApp is, My app needs to be up and running using the command:
ionic serve
This option looks great when doing development.
But now, I have my app build and I want to share it with the testing team and PO who is located on shore.
I want to know is there any way or free platform where the users can run an app on their mobile devices directly without starting a dev server.
NOTES:
I know about Ionic dashboard, but it is not free when comes to sharing builds.
I don't want to upload my app on Play Store or Google Play.
Any help is recommended as I am really looking for options to share my app.
I use Diawi To share both apk and ipa, bypassing play/app stores.
Hi I am setting up the MoPub GDPR Android SDK, am getting a call to the consent dialog page on the web but get this response :
05-16 11:10:46.469 13030-13152/ E/Volley: [18308] BasicNetwork.performRequest: Unexpected response code 400 for https://ads.mopub.com/m/gdpr_consent_dialog
This means "Bad Request" and that the call is corrupt I think. Has anyone got this call to work ?
This isn't an ideal solution, but it works.
On your test device install a VPN service app, there are lots of free ones available out there. If you're running in an emulator (or a device without Google Play) you can goto one of the many APK mirror sites to download and sideload the APK directly.
I won't get into the obvious risks of using VPNs, or sideloading apks outside of google play, but if you're paranoid just spin up an emulator to test this.
It's important the service offers VPN servers located in countries affected by GDPR.
Enable the VPN service on your device/emulator and make sure you're using a server located in a GDPR country (Germany, for example). Load up the app your testing, and it should now appear that you are accessing
Not sure why Pete is suggesting a VPN here. But it appears I was getting this error because I forgot to replace the AD_UNIT_ID in the SdkConfiguration.Builder with my Ad Unit ID.