Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > afa0e7c59554a6ec33ced1a95f14102d > files > 148

mitmproxy-0.9.2-4.mga4.noarch.rpm

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta  content="text/html; charset=utf-8" http-equiv="Content-Type"/>


<link  href="../01-bootstrap.min.css" type="text/css" rel="StyleSheet"/>
<link  href="../02-docstyle.css" type="text/css" rel="StyleSheet"/>
<link  href="../syntax.css" type="text/css" rel="StyleSheet"/>
<title>mitmproxy 0.9 - Android</title></head><body><div class="navbar navbar-fixed-top">
  <div class="navbar-inner">
    <div class="container">
      <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </a>
      <a class="brand" href="../index.html">mitmproxy 0.9 docs</a>
      </div><!--/.nav-collapse -->
    </div>
  </div>
</div>

<div class="container">
  <div class="row">
    <div class="span3">
      <div class="well sidebar-nav">
        <ul class="nav nav-list">
            <li><a href="../index.html">Introduction</a></li>
            <li><a href="../install.html">Installation</a></li>
            <li><a href="../howmitmproxy.html">How mitmproxy works</a></li>

            <li class="nav-header">Tools</li>
                <li><a href="../mitmproxy.html">mitmproxy</a></li>
                <li><a href="../mitmdump.html">mitmdump</a></li>

            <li class="nav-header">Features</li>
                <li><a href="../features/anticache.html">Anticache</a></li>
                <li><a href="../features/clientreplay.html">Client-side replay</a></li>
                <li><a href="../features/filters.html">Filter expressions</a></li>
                <li><a href="../features/proxyauth.html">Proxy Authentication</a></li>
                <li><a href="../features/replacements.html">Replacements</a></li>
                <li><a href="../features/serverreplay.html">Server-side replay</a></li>
                <li><a href="../features/setheaders.html">Set Headers</a></li>
                <li><a href="../features/sticky.html">Sticky cookies and auth</a></li>
                <li><a href="../features/reverseproxy.html">Reverse proxy mode</a></li>
                <li><a href="../features/upstreamcerts.html">Upstream Certs</a></li>

            <li class="nav-header">Installing Certificates</li>
                <li><a href="../ssl.html">Overview</a></li>
                <li><a href="firefox.html">Firefox</a></li>
                <li><a href="osx.html">OSX</a></li>
                <li><a href="windows7.html">Windows 7</a></li>
                <li><a href="ios.html">IOS</a></li>
                <li><a href="ios-simulator.html">IOS Simulator</a></li>
                <li class="active"><a href="android.html">Android</a></li>

            <li class="nav-header">Transparent Proxying</li>
                <li><a href="../transparent.html">Overview</a></li>
                <li><a href="../transparent/linux.html">Linux</a></li>
                <li><a href="../transparent/osx.html">OSX</a></li>

             <li class="nav-header">Tutorials</li>
                <li><a href="../tutorials/30second.html">Client playback: a 30 second example</a></li>
                <li><a href="../tutorials/gamecenter.html">Setting highscores on Apple's GameCenter</a></li>

            <li class="nav-header">Scripting mitmproxy</li>
                <li><a href="../scripting/inlinescripts.html">Inline Scripts</a></li>
                <li><a href="../scripting/libmproxy.html">libmproxy</a></li>

            <li class="nav-header">Hacking</li>
                <li><a href="../dev/testing.html">Testing</a></li>

        </ul>
      </div>
    </div>

    <div class="span9">
        <div class="page-header">
        <h1>Android</h1>
        </div>
        <p>The proxy situation on Android is <a href="http://code.google.com/p/android/issues/detail?id=1273">an
embarrasment</a>.  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 <a href="../transparent.html">transparent
mode</a> is mandatory for testing Android apps.</p>

<p>We used an Asus Transformer Prime TF201 with Android 4.0.3 in the examples
below - your device may differ, but the broad process should be similar. </p>

<h2>Getting the certificate onto the device</h2>

<p>First we need to get the <strong>mitmproxy-ca-cert.cer</strong> file into the
<strong>/sdcard/Downloads</strong> folder on the device. There are a number of ways to do
this. If you have the Android Developer Tools installed, you can use <a href="http://developer.android.com/tools/help/adb.html"><strong>adb
push</strong></a> to accomplish this.
Depending on your device, you could also transfer the file using external media
like an SD Card. In this example, we're using wget from within a terminal
emulator  to transfer the certificate from a local HTTP server: </p>

<p><img src="android-shellwgetmitmproxyca.png"/></p>

<h2>Installing the certificate</h2>

<p>Once we have the certificate on the local disk, we need to import it into the
list of trusted CAs. Go to Settings -&gt; Security -&gt; Credential Storage,
and select "Install from storage":</p>

<p><img src="android-settingssecuritymenu.png"/></p>

<p>The certificate in /sdcard/Downloads is automatically located and offered for
installation. Installing the cert will delete the download file from the local
disk:</p>

<p><img src="android-settingssecurityinstallca.png"/></p>

<p>Afterwards, you should see the certificate listed in the Trusted Credentials
store:</p>

<p><img src="android-settingssecurityuserinstalledca.png"/></p>

    </div>
  </div>

  <hr>

  <footer>
    <p>© mitmproxy project, 2013</p>
  </footer>
</div>
</body></html>