This plugin integrates the following Google services into Kvaesitso:
- Google Drive
- Google Calendar
- Google Tasks
- Unfortunately, the Google Tasks API only exposes the date information of due times, not the precise times. Because of that, tasks will only appear with a due date, but not a due time in Kvaesitso.
To build this plugin, you need to setup a project in the Google Cloud Console.
-
Go to the Google Cloud Console.
-
Create a new project.
-
Enable the Google Drive, Google Calendar, and Google Tasks APIs.
- Go to APIs & Services > Library.
- Search for the respective API and enable it.
-
Setup your OAuth consent screen.
- Go to APIs & Services > OAuth consent screen.
- Fill out the required fields.
- Add the following scopes:
drive.file.metadata.readonly
calendar.readonly
tasks.readonly
userinfo.profile
-
Create a new Oauth 2.0 client ID (you need to do this twice, for debug builds and for release builds)
- Go to APIs & Services > Credentials.
- Create a new OAuth 2.0 client ID.
- Choose "Android" as the application type.
- Enter the package name (
de.mm20.launcher2.plugin.google
) and the SHA-1 certificate fingerprint - Click "Create".
-
Download the client config file (again, you need to do this twice, for debug builds and for release builds).
-
Go to APIs & Services > Credentials.
-
Click on the client ID you just created.
-
Click on the "Download" icon next to the client config file > "Download JSON". The downloaded file should look like this:
{ "installed": { "client_id": "<client_id>.apps.googleusercontent.com", "project_id": "<project_id>", "auth_uri": "https://accounts.google.com/o/oauth2/auth", "token_uri": "https://oauth2.googleapis.com/token", "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs" } }
-
Save the file as
google_auth.json
in theapp/src/release/res/raw
(orapp/src/debug/res/raw
) directory.
-
-
You can now build the project normally in Android Studio.
This plugin is licensed under the Apache License 2.0.
Copyright 2023 MM2-0 and the Kvaesitso contributors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.