docs: some info about some errors I saw

This commit is contained in:
əlemi 2023-05-03 20:33:59 +02:00
parent f2e34d889f
commit e075a9d38f
Signed by: alemi
GPG key ID: A4895B84D311642C

View file

@ -3,10 +3,14 @@ This project is ready with gradle wrapper 7.3.3 and all strictly necessary files
## Installing Android SDK ## Installing Android SDK
Note that you will need to download an android SDK: find them at the bottom of [Android Studio download page](https://developer.android.com/studio/) (under "Command line tools only"). Note that you will need to download an android SDK: find them at the bottom of [Android Studio download page](https://developer.android.com/studio/) (under "Command line tools only").
Once that is done, set your `ANDROID_HOME` environment variable to point to where you just extracted your files. Once that is done, set `sdk.dir` in `./local.properties` file, pointing to where you just extracted your files.
If you'd rather choose where android caches its stuff, also set `ANDROID_SDK_HOME` and `ANDROID_USER_HOME` (note that, if equal to `ANDROID_HOME`, they seem to get ignored). If you'd rather choose where android caches its stuff, also set `ANDROID_SDK_HOME` and `ANDROID_USER_HOME` (note that, if equal to `ANDROID_HOME`, they seem to get ignored). I haven't tried this tho.
This is not enough: gradle will complain that no license was accepted. You need to navigate to your SDK folder, enter `./bin` directory and run `./sdkmanager --licenses`. (If you haven't set your sdk root, also pass `--sdk_root=..`) This is not enough: gradle will complain that no license was accepted. You need to navigate to your SDK folder, enter `./bin` directory and run `./sdkmanager --licenses`. (If you haven't set your sdk root, also pass `--sdk_root=..`)
It's not super clear what `--licenses` will do, but it seems that it fetches the current licenses from Google servers and then asks you to accept them. Once that is done, a new folder `licenses` will be created in your SDK root, containing an unique identifier for each software which license you accepted. It's not super clear what `--licenses` will do, but it seems that it fetches the current licenses from Google servers and then asks you to accept them. Once that is done, a new folder `licenses` will be created in your SDK root, containing an unique identifier for each software which license you accepted.
The only really necessary license is the android-sdk one (not preview or arm or mips). Everything else can be rejected.
Once you downloaded the SDK and accepted Google licenses, try to build the project once: Gradle will download missing components (such as Platform Tools, Patch Applier, Android Emulator, SDK Tools, Build Tools, SDK platform). Once you downloaded the SDK and accepted Google licenses, try to build the project once: Gradle will download missing components (such as Platform Tools, Patch Applier, Android Emulator, SDK Tools, Build Tools, SDK platform).
### Failed to find target with hash string '...'
This error is weird and I have no idea why it happens. I think I solved it by manually redownloading the platform with sdkmanager: `$ANDROID_SDK_HOME/bin/sdkmanager "platforms;android-xx"`