|
1 | | -# ArcGIS Android Kotlin Samples |
| 1 | +# ArcGIS Maps SDK Kotlin Samples |
2 | 2 |
|
3 | | -## Requirements |
4 | | -- [Android Plugin for Gradle 7.4.2](https://developer.android.com/studio/releases/gradle-plugin#7.4.2) |
5 | | -- [Kotlin 1.5.20](https://blog.jetbrains.com/kotlin/2021/06/kotlin-1-5-20-released/) |
| 3 | +# Overview |
| 4 | +ArcGIS Maps SDK Kotlin for Android v200.0.0 samples. The `main` branch of this repository contains sample app modules for the latest available version of the [ArcGIS Maps SDK Android Kotlin](https://developers.arcgis.com/android/). Samples released under older versions can be found through the [git tags](https://github.com/Esri/arcgis-maps-sdk-kotlin-samples/tags). Please read our [wiki](https://github.com/Esri/arcgis-maps-sdk-kotlin-samples/wiki) for help with working with this repository. |
6 | 5 |
|
7 | | -## Import Kotlin Samples into Android Studio |
| 6 | +# Prerequisites |
| 7 | +* The samples are building with `compileSdkVersion 33` |
| 8 | +* [Android Studio](http://developer.android.com/sdk/index.html) |
| 9 | +* [An ArcGIS Developers API key](https://developers.arcgis.com/android/get-started/#3-get-an-api-key) |
8 | 10 |
|
9 | | -- From the Android Studio toolbar select **File > Import Project** project from the **Welcome Quick Start**. |
10 | | -- Navigate to the **kotlin** project directory and click OK |
| 11 | +## Developer Instructions |
| 12 | +Please read our [developer instructions wiki page](https://github.com/Esri/arcgis-maps-sdk-kotlin-samples/wiki/dev-instructions) to set up your developer environment with Android Studio. Instructions include forking and cloning the repository for those new to Git. |
| 13 | + |
| 14 | +Once the project is cloned to disk you can import into Android Studio: |
| 15 | + |
| 16 | +* From the Welcome to Android Studio screen, click the **Open** button. (If you're already inside a project, click **File > Open** in the menu bar instead.) |
| 17 | +* Navigate to the **arcgis-maps-sdk-kotlin-samples/** folder and click **OK**. |
| 18 | + |
| 19 | +## Accessing Esri location services |
| 20 | +Accessing Esri location services, including basemaps, routing, and geocoding, requires authentication using either an API Key or an ArcGIS identity: |
| 21 | + 1. API key: A permanent key that gives your application access to Esri location services. Visit your [ArcGIS Developers Dashboard](https://developers.arcgis.com/dashboard) to create a new API key or access an existing API key. |
| 22 | + |
| 23 | +The Android samples in this repository have been structured to use an API key, set once, which will run in all samples. Set your API key in the `gradle.properties` file located in the `/.gradle` folder within your home directory (`/Users/<user_name>/.gradle/gradle.properties`). The API_KEY property should contain quotes around the key itself: `API_KEY = "YOUR_API_KEY"` |
| 24 | + |
| 25 | +2. ArcGIS identity: An ArcGIS named user account that is a member of an organization in ArcGIS Online or ArcGIS Enterprise. |
| 26 | + |
| 27 | +## Run a sample |
| 28 | +Once you have set up your developer environment you can run any sample from within Android Studio by selecting the app module from the **Edit Configurations** drop down and clicking the **Run** button from the toolbar. |
| 29 | + |
| 30 | +### Build/Run sample from Gradle |
| 31 | +You can execute all the build tasks using the [Gradle Wrapper](https://docs.gradle.org/current/userguide/gradle_wrapper.html) command line tool. It's available as a batch file for Windows (gradlew.bat) and a shell script for Linux/Mac (gradlew.sh) and it is accessible from the root of the project. |
| 32 | + |
| 33 | +- Build a debug APK |
| 34 | + |
| 35 | +``` |
| 36 | +$ ./gradlew assembleDebug |
| 37 | +``` |
| 38 | + |
| 39 | +- Run the app |
| 40 | + |
| 41 | +**Device** |
| 42 | +``` |
| 43 | +adb -d install path/to/sample.apk |
| 44 | +``` |
| 45 | + |
| 46 | +Built APK's are saved to **arcgis-maps-sdk-kotlin-samples/[module-name]/build/outputs/apk/**. More information about running apps on devices can be found [here](https://developer.android.com/studio/run/device.html). |
| 47 | + |
| 48 | +### Run samples through the sample viewer |
| 49 | +The samples in this repository can also be viewed in a single sample viewer app. It can be found on the Play Store or [on ArcGIS Online](https://arcgisruntime.maps.arcgis.com/home/item.html?id=21ac248ea189406c821400dc28bf686c). If downloading from ArcGIS Online, follow these instructions to run the app locally on your device: |
| 50 | +- Download and unzip the file to get the apk **ArcGIS_Runtime_Sample_Viewer_Android_20000.apk**. |
| 51 | + |
| 52 | +## Issues |
| 53 | + |
| 54 | +Have a question about functionality in the ArcGIS Maps SDK Kotlin Samples? Want to ask other users for development advice, discuss a workflow, ask Esri staff and other users about bugs in the API? Use [GeoNet](https://community.esri.com/t5/arcgis-runtime-sdk-for-android/bd-p/arcgis-runtime-sdk-for-android-questions) for any general questions like this, so others can learn from and contribute to the discussion. |
| 55 | + |
| 56 | +Do you have something to [contribute](.github/CONTRIBUTING.md)? Send a pull request! New Samples, bug fixes and documentation fixes are welcome. |
| 57 | + |
| 58 | +Have a problem running one of the samples in this repo? Does the sample not work on a specific device? Have questions about how the code in this repo is working? Want to request a specific sample? In that case, [submit a new issue](https://github.com/Esri/arcgis-maps-sdk-kotlin-samples/issues). |
| 59 | + |
| 60 | + |
| 61 | +## Contributing |
| 62 | +Anyone and everyone is welcome to [contribute](.github/CONTRIBUTING.md). We do accept pull requests. |
| 63 | + |
| 64 | +1. Get Involved |
| 65 | +2. Report Issues |
| 66 | +3. Contribute Code |
| 67 | +4. Improve Documentation |
| 68 | + |
| 69 | +Please see our [guidelines for contributing doc](https://github.com/Esri/contributing/blob/main/README.md) |
| 70 | + |
| 71 | +## Licensing |
| 72 | +Copyright 2021 Esri |
| 73 | + |
| 74 | +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 |
| 75 | + |
| 76 | +http://www.apache.org/licenses/LICENSE-2.0 |
| 77 | + |
| 78 | +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. |
| 79 | + |
| 80 | +A copy of the license is available in the repository's [license.txt](https://github.com/Esri/arcgis-android-sdk-gradle-samples/blob/main/LICENSE) file. |
0 commit comments