Merge pull request #7543 from hayaksi1/fix/2812-debug-proxying-docs

Point the proxy debugging doc at the method that builds the clients
This commit is contained in:
Benoit Marty
2026-08-25 15:59:51 +02:00
committed by GitHub
+6 -1
View File
@@ -9,13 +9,18 @@
1) Set `127.0.0.1` as "Host name" and `8080` as "Port number". 1) Set `127.0.0.1` as "Host name" and `8080` as "Port number".
1) Click "Apply" and verify that "Proxy status" is "Success" and close the settings window. 1) Click "Apply" and verify that "Proxy status" is "Success" and close the settings window.
<img width="932" alt="Screenshot 2023-10-04 at 14 48 47" src="https://github.com/element-hq/element-x-android/assets/1273124/bf99a053-20b0-42a4-91d3-9602f709f684"> <img width="932" alt="Screenshot 2023-10-04 at 14 48 47" src="https://github.com/element-hq/element-x-android/assets/1273124/bf99a053-20b0-42a4-91d3-9602f709f684">
1) Alternatively, set the proxy on the device itself, which the app honours through `DefaultProxyProvider`, and which also works on a physical device:
```
adb shell settings put global http_proxy 10.0.2.2:8080
```
Use `adb shell settings delete global http_proxy` to remove it afterwards. On a physical device, replace `10.0.2.2` with the address of the machine running mitmproxy.
1) Install the mitmproxy CA cert (this is needed to see traffic from java/kotlin code, it's not needed for traffic coming from native code e.g. the matrix-rust-sdk). 1) Install the mitmproxy CA cert (this is needed to see traffic from java/kotlin code, it's not needed for traffic coming from native code e.g. the matrix-rust-sdk).
1) Open the emulator Chrome browser app 1) Open the emulator Chrome browser app
1) Go to the url `mitm.it` 1) Go to the url `mitm.it`
1) Follow the instructions to install the CA cert on Android devices. 1) Follow the instructions to install the CA cert on Android devices.
<img width="606" alt="Screenshot 2023-10-04 at 14 51 27" src="https://github.com/element-hq/element-x-android/assets/1273124/5f2b6f27-6958-4ea7-97fe-c7f06d105da5"> <img width="606" alt="Screenshot 2023-10-04 at 14 51 27" src="https://github.com/element-hq/element-x-android/assets/1273124/5f2b6f27-6958-4ea7-97fe-c7f06d105da5">
1) Slightly modify the Element X app source code. 1) Slightly modify the Element X app source code.
1) Go to the `RustMatrixClientFactory.create()` method. 1) Go to the `RustMatrixClientFactory.getBaseClientBuilder()` method, which builds every client the app creates, whether it is logging in or restoring a session.
1) Add `.disableSslVerification()` in the `ClientBuilder` method chain. 1) Add `.disableSslVerification()` in the `ClientBuilder` method chain.
1) Build and run the Element X app. 1) Build and run the Element X app.
1) Enjoy, you will see all the traffic in mitmproxy's web interface. 1) Enjoy, you will see all the traffic in mitmproxy's web interface.