mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-27 02:24:18 +00:00
54 lines
2.2 KiB
HTML
54 lines
2.2 KiB
HTML
The proxy situation on Android is [an
|
|
embarrasment](http://code.google.com/p/android/issues/detail?id=1273). It's
|
|
scarcely credible, but Android didn't have a global proxy setting at all until
|
|
quite recently, and it's still not supported on many common Android versions.
|
|
In the meantime the app ecosystem has grown used to life without this basic
|
|
necessity, and many apps merrily ignore it even if it's there. This situation
|
|
is improving, but in many circumstances using [transparent
|
|
mode](@!urlTo("transparent.html")!@) is mandatory for testing Android apps.
|
|
|
|
We used both an Asus Transformer Prime TF201 (Android 4.0.3) and a Nexus 4
|
|
(Android 4.4.4) in the examples below - your device may differ, but the broad
|
|
process should be similar. On **emulated devices**, there are some [additional
|
|
quirks](https://github.com/mitmproxy/mitmproxy/issues/204#issuecomment-32837093)
|
|
to consider.
|
|
|
|
|
|
## Getting the certificate onto the device
|
|
|
|
The easiest way to get the certificate to the device is to use [the web
|
|
app](@!urlTo("webapp.html")!@). In the rare cases where the web app doesn't
|
|
work, you will need to get the __mitmproxy-ca-cert.cer__ file into the
|
|
__/sdcard__ folder on the device (/sdcard/Download on older devices). This can
|
|
be accomplished in a number of ways:
|
|
|
|
- If you have the Android Developer Tools installed, you can use [__adb
|
|
push__](http://developer.android.com/tools/help/adb.html).
|
|
- Using a file transfer program like wget (installed on the Android device) to
|
|
copy the file over.
|
|
- Transfer the file using external media like an SD Card.
|
|
|
|
Once we have the certificate on the local disk, we need to import it into the
|
|
list of trusted CAs. Go to Settings -> Security -> Credential Storage,
|
|
and select "Install from storage":
|
|
|
|
<img src="android-settingssecuritymenu.png"/>
|
|
|
|
The certificate in /sdcard is automatically located and offered for
|
|
installation. Installing the cert will delete the download file from the local
|
|
disk.
|
|
|
|
|
|
## Installing the certificate
|
|
|
|
You should now see something like this (you may have to explicitly name the
|
|
certificate):
|
|
|
|
<img src="android-settingssecurityinstallca.png"/>
|
|
|
|
Click OK, and you should then see the certificate listed in the Trusted
|
|
Credentials store:
|
|
|
|
<img src="android-settingssecurityuserinstalledca.png"/>
|
|
|