I am trying to integrate the Google plus login into my application as described in the instructions at the following link:
I follow all instructions to the letter. And when I launch the sample application on the real device in android-sdk and press the login button, Toast appears on the screen and tells me there is an internal error.
What am I doing wrong?
How can I solve this problem?
This can happen if you have not defined the signature for the client ID in your console API project, or if you have copied the wrong key value from the key tool. This is documented in steps 7, 8, 9 and 10 of the Quick Start Guide.
I have this problem, and even after creating 10 different client IDs with different SHAs and package names, it doesn’t work…. until I find out that you have to fill in the permission field.
According to the GoogleDevelopers Console –
The consent screen is shown to users when they ask
for access to their personal data using their customer ID.
I solved the problem by removing .setScopes(PLUS_LOGIN) in PlusClient.Builder.
I have this toast error in my android app:
There was an internal error
Suppose you made an error when configuring the communication between your Android application and the PI server you are accessing. This is probably due to the package name or SHA1 fingerprint not being added correctly. I followed these steps to deflate and correct the misconfiguration.
Steps to remedy the situation :
- Go to google’s api console and log in: https://code.google.com/apis/console.
- Click on the API access tab.
- Press the button: Create another customer ID.
- Take your pick: Question installed.
- Take your pick: Android radio button.
- Enter the name of the Android application package that displays the above error. It is located at the beginning of the PlusSampleActivity.java code file. For me, it’s com.google.android.gms.samples.plus.
- Capture SHA1 fingerprints:
a. Use the command keytool -list -v -keystore /home/el/.android/debug.keyystore. Enter the password. If you have never set it up before, the default password is android.
b. The SHA1 fingerprint appears on the screen, copy it.
- Add the above value to the fingerprint signing certificate (SHA1):. The box.
- Press the button: Create a customer ID.
- Restart the android, press the Connect button.
You will then be prompted to perform the Sign in to the Google+ SDK with Google action.
Solution no. 5:
In my case, the solution was to set the email address on the permission screen.
At first I was a bit reluctant to choose my home address, and for some strange reason the form can unambiguously register without this part of the data. After checking what others have suggested, it worked once I set my email address in this form.
Solution no. 6:
I once looked for a solution to this problem, without success. Eventually I was able to solve this problem with the following approach
Before I start solving this problem (at least the way it worked for me), I have to say that everything in the
documentation is correct and there is no need to change lines of code or anything else.
This looks more like a bug in the cloud console https://cloud.google.com/console.
First, make sure you get the correct SHA1 and package name for your project as described in the
This error, as I noticed (at least for me), is that in my cloud console, the project I created
, I was using the old interface for a long time, and I switched to the new GUI a few months ago. If you take a fresh look at the cloud console, you will notice that new projects have an automatically generated project ID of
, like this atlant-ares-331 , while old projects have a long integer value as project ID that is not visible. So, if your project was created with the old GUI and you just created a new client for OAuth for this project, you get Toast An internal error occurred when you tried to connect to Google.
How to recover
- Access your Cloud Console
- Create a new project, I suggest a name like
- In the API section, enable the Google+ API.
- Make sure none of your projects have the same package name on the OAuth Client ID
with the same package name you will use now, otherwise you will get the following error This client ID is unique in the world and already in use (you must remove the old OAuth Client ID with the same package name you will use now).
- Go to Credentials Create a new ID number for OAuth.
Enter the name of your project package and your SHA1.
Solution no. 7:
My solution to the problem was this.
I did everything the others recommended, and there were no typos regarding the package name and SHA1 key. I also tried deleting the key and re-entering it, but to no avail.
It allowed removing the key and creating a new project (at https://code.google.com/apis/console) and recreating the client identification (with package+sha1). After that (5 seconds) everything worked on my Android device.
Solution no. 8:
This problem is related to the permissions of the Api console.
If you are using the permission associated with SCOPE_PLUS_LOGIN, you must create two keys in the api console, one for the OAuth client ID and one for the api public key.
Solution no. 9:
In my case, the problem was that I changed the name of the application package and it was not updated in the development console.
Solution no. 10:
For me, I was trying to use my production key when I installed the debug key. Make sure you are using the correct SHA1 from the correct key block.