From c8027f7d36d447eee59e2c18becfd17134f4b725 Mon Sep 17 00:00:00 2001 From: marazmarci Date: Thu, 31 Oct 2024 10:51:25 +0100 Subject: [PATCH] Improve wording, grammar, and punctuation in README.md --- README.md | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index db402457f48..fd95f9f5655 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # :iphone: Home Assistant Companion for Android ![Beta Deploy](https://github.com/home-assistant/android/workflows/Beta%20Deploy/badge.svg) ## Documentation -If you are looking for documentation around the companion applications check out the [Home Assistant Companion Documentation](https://companion.home-assistant.io/). This will provide you instructions on using the applications. +If you are looking for documentation around the companion applications check out the [Home Assistant Companion Documentation](https://companion.home-assistant.io/). This will provide you with instructions on using the applications. ## Setup App Development Environment @@ -11,24 +11,24 @@ If you are looking for documentation around the companion applications check out 3. Create a Firebase project at [Firebase Console](https://console.firebase.google.com) -4. Create four Android apps, with following package names +4. Create four Android apps, with the following package names - `io.homeassistant.companion.android` - `io.homeassistant.companion.android.debug` - `io.homeassistant.companion.android.minimal` - `io.homeassistant.companion.android.minimal.debug` -5. Now download the `google-services.json` file and put it in the project's _/app_, _/automotive_ and _/wear_ folders. This file contains the configuration of the whole project (all four applications). ([You can also use the mock services file instead of generating your own](/.github/mock-google-services.json). The file should contain client IDs for all packages listed above for debugging to work properly. **If you do not generate your own file FCM push notification will never work, only websocket notifications will**) -6. Start Android Studio, open your source code folder and check if the Gradle build will be successful using Build/Make Module "App". You might have to install the right Android SDK via Tools/SDK Manager first. +5. Now download the `google-services.json` file and put it in the project's _/app_, _/automotive_ and _/wear_ folders. This file contains the configuration of the whole project (all four applications). ([You can also use the mock services file instead of generating your own](/.github/mock-google-services.json). The file should contain client IDs for all packages listed above for debugging to work properly. **If you do not generate your own file, FCM push notification will never work, only websocket notifications will**). +6. Start Android Studio, open your source code folder, and check if the Gradle build will be successful using Build/Make Module "App". You might have to install the right Android SDK via Tools/SDK Manager first. 7. Run `gradlew assembleDebug` to build all debug versions, this might take a while. 8. If the build is successful, you can run the app by doing the following: click **Run** -> **Run 'app'**. -9. Connect your phone or create a new virtual device following on screen instruction +9. Connect your phone or create a new virtual device following on-screen instructions. 10. :tada: If you get stuck while setting up your own environment, you can ask questions in the **#devs_mobile_apps** channel on [Discord](https://discord.gg/c5DvZ4e). ### Push Notifications -If you want to work on push notifications or use a development build with push notifications, please go the server side code [HERE](https://github.com/home-assistant/mobile-apps-fcm-push) and deploy it to your firebase project. Once you have your androidV1 URL to the deployed service, set it in to your `${GRADLE_USER_HOME}/gradle.properties` file, e.g.: +If you want to work on push notifications or use a development build with push notifications, please go to the server-side code [HERE](https://github.com/home-assistant/mobile-apps-fcm-push) and deploy it to your Firebase project. Once you have your androidV1 URL to the deployed service, set it in to your `${GRADLE_USER_HOME}/gradle.properties` file, e.g.: ```properties homeAssistantAndroidPushUrl=https://mydomain.cloudfunctions.net/androidV1 ``` @@ -40,12 +40,12 @@ homeAssistantAndroidRateLimitUrl=https://mydomain.cloudfunctions.net/checkRateLi ## App Flavors -The Android app has both a full flavor that uses Google Play Services to offer features like location tracking and notifications. There is also a minimal flavor that does not require Google Play Services and can be found in the releases section. The minimal flavor does not have location tracking or notifications. +The Android app has a `full` flavor that uses Google Play Services to offer features like location tracking and notifications. There is also a `minimal` flavor that does not require Google Play Services and can be found in the releases section. The minimal flavor does not have location tracking or notifications. ## Building for publishing To build the app for publishing, you will need to sign the app. To do this, do the following: -1. Create keystore containing keypair for debug application signing. In Android Studio: Menu/Build/Generate signed APK, then use a button to create new keystore. Remember the passwords and key alias. Default, the keystore must be named `release_keystore.keystore` and should be placed in the _home-assistant-Android/app_ and _home-assistant-Android/wear_ folder. +1. Create a keystore containing a keypair for debug application signing. In Android Studio: Menu/Build/Generate signed APK, then use a button to create a new keystore. Remember the passwords and the key alias. Default, the keystore must be named `release_keystore.keystore` and should be placed in the _home-assistant-Android/app_ and _home-assistant-Android/wear_ folder. 2. Set environmental variables used in `app/build.gradle.kts`: - `KEYSTORE_PASSWORD` - `KEYSTORE_ALIAS` @@ -56,7 +56,7 @@ To build the app for publishing, you will need to sign the app. To do this, do t ## Testing Dev Releases -We are using [Github Actions](https://github.com/home-assistant/android/actions) to perform continuous integration both by unit testing, deploying dev releases to [Play Store Beta](https://play.google.com/apps/testing/io.homeassistant.companion.android) and final releases to the [Play Store](https://play.google.com/store/apps/details?id=io.homeassistant.companion.android) when we release. To help test out a specific feature/fixes users can find the APK on the Actions page for each pull request, this debug APK can be installed side-by-side the production or beta builds. +We are using [Github Actions](https://github.com/home-assistant/android/actions) to perform continuous integration both by unit testing, deploying dev releases to [Play Store Beta](https://play.google.com/apps/testing/io.homeassistant.companion.android) and final releases to the [Play Store](https://play.google.com/store/apps/details?id=io.homeassistant.companion.android) when we release. To help test out a specific feature/fixes users can find the APK on the Actions page for each pull request, this debug APK can be installed side-by-side with the production or beta builds. ## Quality @@ -65,7 +65,7 @@ You can run a check locally on your machine with: ```bash ./gradlew ktlintCheck ``` -This commands runs on our CI to check if your PR passes all tests. So we strongly recommend running it before committing. +This command runs on our CI for every PR to check if it passes all tests. So we strongly recommend running it before committing. To run a check with an auto-format: ```bash @@ -73,7 +73,7 @@ To run a check with an auto-format: ``` ## Translating -The project currently uses [lokalise](https://lokalise.com/public/145814835dd655bc5ab0d0.36753359/) to translate the application. If you are interested in helping translate go to the link and click start translating! +The project currently uses [Lokalise](https://lokalise.com/public/145814835dd655bc5ab0d0.36753359/) to translate the application. If you are interested in helping translate go to the link and click start translating! ## Generating a release to production