Let Flutter plugin access a restricted Google Cloud API - flutter

My Flutter app for Android uses the place_picker plugin, to which I pass the Maps API key as follows (from the docs):
PlacePicker("YOUR API KEY");
Everything works fine until I restrict the API usage to Android apps with my SHA1 signature, which works for all other packages I am using, namely the google_maps_flutter plugin, which uses that same API key.
Why does the API not work with the plugin? It's still running in my app signed by me.
Thanks in advance.

Related

Implementing google login flutter gives 12500 error

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.

Any cordova plugin to add WebAuthn API to Android WebView?

We've developed a cordova app that shows one of our websites (which is also accessible using a web browser).
Recently, FIDO2 authentication using WebAuthn has been added to that website. This works fine in the tested browsers (Chrome and Firefox), but not in our cordova application, as it uses Android WebView, which doesn't implement the WebAuthn API.
Does anybody know if there is any cordova plugin to add this API to Android WebView?
Is there any website with information about the Android WebView roadmap (bugs that will be fixed in next release, new features that will be added, ...)?
You're correct that Android WebView doesn't support WebAuthn in Android 13. We hope to address that in the Android 14 timeframe but, for now, you have to inject Javascript hooks and use a Javascript bridge to implement it. It's certainly possible to do but I'm not aware of any packaged solutions that do it.

Can we use moodle for android application

Will I be able to use moodle in the Android application instead of google firebase for authentication (login page).
pleases Help.

Ionic and Firebase v3 google auth error

I'm trying to add the Google-plus login to my app, but no matter what I do I cannot get it working on a real Android device.
So far I was able to get the idToken from this plugin
cordova-plugin-googleplus
Using Firebase's singInWithCredential(idToken) I get an error that said:
This app, identified by the domain where it is hosted, is not authorized to use Firebase Authentication with the provided API key. Review your key configuration in the Google API console.
I want to point out that I follow all the steps for the installation, SHA1 key are correct and I am using signed APKs.
Using the facebook plugin, retrieving the token and signInWithCredential worked without any issue.
Thanks in advance!
it seems like you have some API key restrictions that are not met by your ionic application.
To begin with, please check you are using the API key from the "Web setup" popup, under the auth section of the Firebase console for your project. This one should work out of the box if you have not changed your configuration in the API console.
If that doesn't fix the issue, go to the credentials section of the Google API console for your Firebase project, look for the API key that you are using, and check which referrer restrictions are set there and ensure they are met by your application. Read this answer for several options that you have to set up your API key restrictions for a Cordova app.
In my Ionic2 RC1 + Firebase3.5 + AngularFire2.beta5 project I had the same problem... Google Auth with Popup worked in Browser but not in my Android .APK
Note.- I didn't use Tokens in my App
Firstly, I add 192.168.1.172 to my Firebase Console authorized domain list and <allow-navigation href="http://192.168.1.172:8100"/> to my config.xml.
After this, I found that installing Cordova InAppBrowser plugin solves my problem definitively.
I didn't need to modify my code, only plug and play, exactly like David East says in his Social login with Ionic blog.

ARC Welder Unrecognized manifest key 'arc_metadata'

I'm trying to play with a Simple ARCWelder example using Google Maps but I keep getting Unrecognized manifest key 'arc_metadata'.
I've done the following:
Created a sample Android app via Android Studio that uses Google Maps API 2. The Android app is a barebones basic app with a single MainActivity with uses SupportMapFragment. I'm very familiar with this process, and everything runs up fine on an actual device (N6), with Google Maps working correctly
I've taken the debug apk from point 1, and am trying to use ARC Welder to run it within Chrome.
As I'm using Google Play Services, I've generated an OAuth Client ID within console.developers.google.com for my project and have copied and pasted this into ARC Welder
I've created a package on ChromeWebStore, and have published it as private available to internal testers, and later to public but it made no difference
I'm running Chrome v46 and have enabled Developer Mode
I've taken the public key from my chrome WebStore entry, stripped out line breaks etc, and my Additional Metadata in ARCWelder looks like this:
{"crx_key":"XXXXXXX","usePlayServices":["location","maps"]}
The result under chrome://extensions:
There were warnings when trying to install this extension:
Unrecognized manifest key 'arc_metadata'.
Also, TESTing my app under ARC Welder does not run up my app.
Would appreciate if anyone can offer any other suggestions?
Announcement
Google will no longer support Chrome App.Maybe you should try to run it on a lower version of chrome.