java.lang.NoSuchMethodError Accessing Binding Objects at Runtime
Gradle 3.4.0 has specific issues with Android Data Binding. These manifest with errors like:
Crash: java.lang.NoSuchMethodError: No direct method at com.loopmediagroup.ui.databinding.LmgListitemTwoLineLargeImgBinding.<init>
Move the project to use a different version, either 3.4.2 or lower / higher.
SSLHandshakeException(Chain validation failed) When Running In Emulator
When running with the emulator, you may see
javax.net.ssl.SSLHandshakeException(Chain validation failed) errors when loading images.
This is typically caused by a difference between the actual date & time and the date & time in the emulator. Cold booting the emulator will generally fix this issue.
See Github Issue Discussion for more details.
Android 4.X SSL Issues
There are some issues with older versions of Android and newer SSL certificate type requirements. Depending on your app's configuration you may hit one or more of these issues.
These are generally able to be resolved by adding a custom Glide module to work around the problem, such has this solution.
As each app's implementation will be different, please research the correct solution for your app if you encounter these types of error.
More than one file with path META-INF...
There is an issue with some versions of the Kotlin Serialization library that can include multiple versions of the meta files during build.
This manifests with errors like:
Execution failed for task ':app:mergeDebugJavaResource'.
> A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade
> More than one file was found with OS independent path 'META-INF/kotlinx-serialization-json.kotlin_module'
Explicitly exclude the offending
META-INF files in the
android.packagingOptions section of the app