# Add no patterns to .gitignore except for files generated by the build.
last-change
*.apk
*.app
*.framework
*.aar
*.iml
.idea
.gradle

# Android Studio build and IDE configuration files.
example/bind/android/local.properties
example/bind/android/gradlew*
example/bind/android/gradle
example/bind/android/build
example/bind/android/app/build
