I'm lost in the sheer vastness of the source code Selenium space.
When I put `
implementation 'org.seleniumhq.selenium:selenium-htmlunit-driver:2.52.0'` into the app build.gradle in an Android project, I get the following error:
java.lang.NoSuchFieldError: No static field INSTANCE of type Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; in class Lorg/apache/http/conn/ssl/AllowAllHostnameVerifier; or its superclasses (declaration of 'org.apache.http.conn.ssl.AllowAllHostnameVerifier' appears in /system/framework/framework.jar!classes4.dex)
I'm trying to understand what happened, from a code forking perspective, and if there's a way around this. The above seems to indicate that if I pull from [
https://repo.maven.apache.org/maven2/org/seleniumhq/selenium/selenium-htmlunit-driver/] (which is where the Android Studio pulls from), the latest code is from 2016, and it's an old version (2.25.0). It appears that Android system framework is looking for AllowAllHostnameVerifier, but it's not there?
So I found this, from Stackoverflow:
https://stackoverflow.com/questions/69523686/android-studio-how-can-i-fill-in-a-html-form-and-click-the-submit-button-with-se which is an unanswered question. That leads to a discussion that I don't understand (
lost in the sheer vastness of the source code Selenium space) and this:
https://github.com/HtmlUnit/htmlunit/issues/133The good news is that user `rbri` has a recent comment on the github issue. I hope his idea is fruitful, but also thought that the users here might have found a work-around that they had yet to share with the world.