備忘録

備忘録

Android 5.x以降でアプリからProxy設定を変更する方法

Ⅰ. はじめに

Android 4.xまではProxy Settings などの便利なアプリで簡単にProxy設定が出来ていました。
しかし、 Android 5.xからはセキュリティの為アプリからProxyの設定が出来なくなりました。
それを回避する方法です。(root権限必須)

Ⅱ. やり方

Wi-FiのProxy情報は /data/misc/wifi/ipconfig.txt に書かれています。
このファイルをアプリからroot権限を用いて変更することでProxy設定を行います。

1. ipconfig.txt をPCに取り込む

$ adb shell
# cp /data/misc/wifi/ipconfig.txt /sdcard/ipconfig.txt
# exit
$ adb pull /sdcard/ipconfig.txt

2. バイナリエディタで ipconfig.txt を開く

3. idの値をメモする

※画像の場合は0x4062a3d6
f:id:kagasu:20161220091609p:plain

4. 以下のプログラムをコンパイルする

※56行目のidは3でメモしたものに書き換える。
https://gist.github.com/kagasu/08103bdf94b1b95dd8c8d8fd743b291a

以上でアプリからProxy設定を変更する事ができます。