服务器的改法其实都大同小异,主要是每次版本更新后,opm存放服务器地址的文件都会变化,所以其实只要掌握了修改方法,每次版本更新的时候,只要找到相应要改的文件就ok了。
所需工具如下:apk打包解包工具apktool、apk签名工具Auto-Sign。
apktool请在项目主页(http://code.google.com/p/android-apktool/)下载安装,多平台可选,这里以windows平台为例。
http://android-apktool.googlecode.com/files/apktool1.4.3.tar.bz2
http://android-apktool.googlecode.com/files/apktool-install-windows-r04-brut1.tar.bz2
把apktool1.4.3.tar.bz2和apktool-install-windows-r04-brut1.tar.bz2里的内容解压到c:\windows\,
Auto-Sign下载:
http://opm-server-mirror.googlecode.com/files/Auto-Sign.zip
下载http://m.opera.com/android/Ow7Good/operamini.apk,这里假设是下载到i:\,
修改步骤:
1.解包
运行cmd.exe,cd 到i:\,
然后输入命令:
apktool.jar d operamini.apk (i:\下会生成operamini目录。下面需要修改operamini目录的内容)
2.查找服务器地址
windows用户可以用notepad++(可到此处http://www.xdowns.com/soft/softdown.asp?softid=21535下载)实现多文件查找、替换。
在i:\operamini\smali文件夹下,选中从a.smali到Z.smali所有的smali文件,把它们拖到notepad++.exe的窗口中,按ctrl+f键,在Find what的栏里输入http,然后点击find all in all opened documents,在notepad++.exe的窗口下部会显示包含有http的文件名。operamini7.0的话,会显示aq.smali、b.2.smali、g.smali,将所有找到的结果的双引号中的内容http替换为你自己的服务器地址(比如"http://yourdomain.com/opm/",注意:不要漏了最后的斜杠。中转服务器的项目地址-
http://code.google.com/p/opm-server-mirror)。仅对http://nada:4711,
http://mini5resource.opera-mini.net,不修改。
然后在i:\operamini\smali\com\opera\mini\android文件夹里,选中从a.smali到Z.smali所有的smali文件,把它们拖到notepad++.exe的窗口中,按ctrl+f键,在Find what的栏里输入http,然后点击find all in all opened documents,在notepad++.exe的窗口下部会显示包含有http的文件名。operamini7的话,会显示I.smali,将所有找到的结果的双引号中的内容http替换为你自己的服务器地址(比如http://yourdomain.com/opm/,注意:不要漏了最后的斜杠).仅对HTTP:Ljava/net/Proxy$Type;这一行和这一行
http://mini.bugs.opera.com?pl=Android&version=7.0不修改。
替换所有socket://为socket://you_cant_use让socket连接无效化.
注意:从opera mini 6.5到现在的opera mini 7,修改方法都是如此,以后opera mini更新了,如果服务器地址的存放方法没有变化,仍然可以用这种方法修改。
3.打包
4.签名
把dist目录里生成的operamini.apk文件复制到由Auto-Sign.zip解压出来的Auto-Sign目录中,运行cmd.exe,cd到该Auto-Sign目录,然后执行命令:
java -jar signapk.jar testkey.x509.pem testkey.pk8 operamini.apk your_app_signed.apk
在Auto-Sign目录下,就会生成your_app_signed.apk文件,把该your_app_signed.apk复制到安卓手机中,安装即可。
如果安装之后却始终显示“无法连接到互联网。请检查您的设置”,解决方法很奇怪:打开飞行模式,关闭飞行模式,然后就ok了,你就可利用这个operamini翻墙了。
如果你已经装过Opera Mini,你可用Titanium Backup备份后卸载(因为签名不匹配不能覆盖安装)。
安装刚才修改好的apk文件。启动后即可使用。之前安装过Opera Mini的可以用Titanium Backup把Data给恢复过去,书签什么的就不会丢了。
注意选项里的连接,只能用HTTP,不能用HTTP/Socket(因为Socket被屏蔽了),影响主要是ajax支持变差了。
(参考https://github.com/ayanamist/opera-mini-mod)
相关帖子: http://briteming.blogspot.de/2012/11/operamini.html
---------------------------------------------------------------------------------
另外一种修改方法见下文:
1.准备
首先,你需要的当然是一个在PHP空间中架设好的中转服务器,具体的方法可参考这里.假设我们上传好的服务器地址为:http://abc.com/loveopera/
其次,要修改Opera Mini的程序文件,需要以下工具
2.反编译
首先,将Opera_Mini_6_5_Android.apk 扩展名改为.zip,即(Opera_Mini_6_5_Android.zip),此时可以用任意的解压缩工具将其打开,提取出其中的 classes.dex文件,并与先前下载好的smali.jar和baksmali.jar放置于同一个文件夹下,如: c:\opm\ 。
打开CMD(开始-运行-CMD),进入c:\opm\ 文件夹(cd c:\opm\),输入以下命令:
3.修改
我们首先需要修改的文件包括.\classes\ 目录下的a.smali、aq.smali、f.smali三个文件,以及.\classes\com\opera\mini\android\目录下的 Code.smali 文件。
用任意文本编辑器打开上述文件,并查找关键字 “http” (不含引号)。此时会找到若干行形如以下格式的文本:
同样的方法,在.\classes\路径下的aq.smali中搜索关键字”socket://“,将所有搜索到的结果修改为如下形式:
4.打包
保存所有的改动。再次回到CMD中,输入:
再次打开Opera_Mini_6_5_Android.zip压缩包,删除压缩包中原有的classes.dex文件及META-INF文件夹,并将刚才修改好的classes.dex文件添加到压缩包中。
5.签名
解压缩签名工具Auto-Sign.zip,将上一步中修改好的Opera_Mini_6_5_Android.zip文件放入解压后的Auto-Sign文件夹中,双击运行其中的 sign.bat 。
6.完成
不出意外的话,在Auto-Sign目录下,你会得到一个名为 your_app_signed.apk 的文件,这就是你想要的,大功告成。
from http://miaoo.in/opera-mini-android-6-5-modify-server.html
----------------------
补充:发现有些同学在改地址的时候有些误解,首先,更改后的地址不要加端口,其次,不要只把your-application-id.appspot.com给写上,还有后面的/opm。如下:
3. 用文本编辑器打开 D:\opm4\opm\Code.smali ,将 http://server4.operamini.com:80 和 socket://server4.operamini.com:1080 都改成你自己架设的OPM服务器地址,如这篇文章介绍的利用GAE搭建的Opera Mini服务器地址。修改后保存。(用UltraEdit编辑的话,保存后删除自动生成的bak文件,否则一会儿影响编译)
4. 打开命令行(cmd),进入D:\opm4,执行如下命令:
5. 到此处下载Android版OPM的安装包:
下载后放入opm4文件夹。
6. 将opm4.apk改名为opm4.zip,用任意压缩工具打开(是打开,不是解包),删除里面的META-INF文件夹,并把刚刚生成好的 D:\opm4\classes.dex 拖进opm4.zip替换掉原始的classes.dex。
7. 把修改过的opm4.zip放入修改包中的Auto-Sign的目录下,运行里面的sign.bat。
1. 点击这里下载修改包,解压至某目录,这里以D:\opm5为例。
2. 打开命令行(cmd),进入D:\opm5,执行
3. 用文本编辑工具修改修改 opm\smali\f.smali 中的
4. 再在同目录下运行:
5. 将得到的opm51.apk重命名为opm51.zip,并拖放到Auto-Sign文件夹内,运行sign.bat来签名,得到your_app_signed.apk,即可以拷入手机安装了.
所需工具如下:apk打包解包工具apktool、apk签名工具Auto-Sign。
apktool请在项目主页(http://code.google.com/p/android-apktool/)下载安装,多平台可选,这里以windows平台为例。
http://android-apktool.googlecode.com/files/apktool1.4.3.tar.bz2
http://android-apktool.googlecode.com/files/apktool-install-windows-r04-brut1.tar.bz2
把apktool1.4.3.tar.bz2和apktool-install-windows-r04-brut1.tar.bz2里的内容解压到c:\windows\,
Auto-Sign下载:
http://opm-server-mirror.googlecode.com/files/Auto-Sign.zip
下载http://m.opera.com/android/Ow7Good/operamini.apk,这里假设是下载到i:\,
修改步骤:
1.解包
运行cmd.exe,cd 到i:\,
然后输入命令:
apktool.jar d operamini.apk (i:\下会生成operamini目录。下面需要修改operamini目录的内容)
2.查找服务器地址
windows用户可以用notepad++(可到此处http://www.xdowns.com/soft/softdown.asp?softid=21535下载)实现多文件查找、替换。
在i:\operamini\smali文件夹下,选中从a.smali到Z.smali所有的smali文件,把它们拖到notepad++.exe的窗口中,按ctrl+f键,在Find what的栏里输入http,然后点击find all in all opened documents,在notepad++.exe的窗口下部会显示包含有http的文件名。operamini7.0的话,会显示aq.smali、b.2.smali、g.smali,将所有找到的结果的双引号中的内容http替换为你自己的服务器地址(比如"http://yourdomain.com/opm/",注意:不要漏了最后的斜杠。中转服务器的项目地址-
http://code.google.com/p/opm-server-mirror)。仅对http://nada:4711,
http://mini5resource.opera-mini.net,不修改。
然后在i:\operamini\smali\com\opera\mini\android文件夹里,选中从a.smali到Z.smali所有的smali文件,把它们拖到notepad++.exe的窗口中,按ctrl+f键,在Find what的栏里输入http,然后点击find all in all opened documents,在notepad++.exe的窗口下部会显示包含有http的文件名。operamini7的话,会显示I.smali,将所有找到的结果的双引号中的内容http替换为你自己的服务器地址(比如http://yourdomain.com/opm/,注意:不要漏了最后的斜杠).仅对HTTP:Ljava/net/Proxy$Type;这一行和这一行
http://mini.bugs.opera.com?pl=Android&version=7.0不修改。
替换所有socket://为socket://you_cant_use让socket连接无效化.
注意:从opera mini 6.5到现在的opera mini 7,修改方法都是如此,以后opera mini更新了,如果服务器地址的存放方法没有变化,仍然可以用这种方法修改。
3.打包
运行cmd.exe,cd 到i:\, 然后输入命令:
apktool.jar b operamini
然后在i:\operamini\下会生成build目录和dist目录。
4.签名
把dist目录里生成的operamini.apk文件复制到由Auto-Sign.zip解压出来的Auto-Sign目录中,运行cmd.exe,cd到该Auto-Sign目录,然后执行命令:
java -jar signapk.jar testkey.x509.pem testkey.pk8 operamini.apk your_app_signed.apk
在Auto-Sign目录下,就会生成your_app_signed.apk文件,把该your_app_signed.apk复制到安卓手机中,安装即可。
如果安装之后却始终显示“无法连接到互联网。请检查您的设置”,解决方法很奇怪:打开飞行模式,关闭飞行模式,然后就ok了,你就可利用这个operamini翻墙了。
如果你已经装过Opera Mini,你可用Titanium Backup备份后卸载(因为签名不匹配不能覆盖安装)。
安装刚才修改好的apk文件。启动后即可使用。之前安装过Opera Mini的可以用Titanium Backup把Data给恢复过去,书签什么的就不会丢了。
注意选项里的连接,只能用HTTP,不能用HTTP/Socket(因为Socket被屏蔽了),影响主要是ajax支持变差了。
(参考https://github.com/ayanamist/opera-mini-mod)
相关帖子: http://briteming.blogspot.de/2012/11/operamini.html
---------------------------------------------------------------------------------
另外一种修改方法见下文:
Opera Mini for Android改服教程
1.准备
首先,你需要的当然是一个在PHP空间中架设好的中转服务器,具体的方法可参考这里.假设我们上传好的服务器地址为:http://abc.com/loveopera/
其次,要修改Opera Mini的程序文件,需要以下工具
Opera_Mini_6_5_Android.apk (Opera mini 官方程序包)注:我已将上述所有工具上传到这里(Github)。此外,上述工具需要Java运行环境的支持,如果没有,请点击这里下载最新的JDK并进行安装,具体方法请自行搜索。
baksmali.jar (用于反编译.dex文件)
smali.jar (用于将修改好的文件重新打包成.dex文件)
Auto-Sign (用于对.apk文件进行签名)
2.反编译
首先,将Opera_Mini_6_5_Android.apk 扩展名改为.zip,即(Opera_Mini_6_5_Android.zip),此时可以用任意的解压缩工具将其打开,提取出其中的 classes.dex文件,并与先前下载好的smali.jar和baksmali.jar放置于同一个文件夹下,如: c:\opm\ 。
打开CMD(开始-运行-CMD),进入c:\opm\ 文件夹(cd c:\opm\),输入以下命令:
java -jar baksmali.jar classes.dex -o classes该指令会将classes.dex反编译为一系列文件并存放在 c:\opm\classes\ 文件夹下。
3.修改
我们首先需要修改的文件包括.\classes\ 目录下的a.smali、aq.smali、f.smali三个文件,以及.\classes\com\opera\mini\android\目录下的 Code.smali 文件。
用任意文本编辑器打开上述文件,并查找关键字 “http” (不含引号)。此时会找到若干行形如以下格式的文本:
const-string v1, “http:“将所有找到的结果引号中的内容替换为你自己的服务器地址,如:
const-string v2, “http://10.72.2.2“
…
const-string v1, “http://abc.com/loveopera/“注意,在f.smali文件中有内容为”http://nada:4711”及”http://mini5resource.opera-mini.net”的两行,我没有对这两行进行修改,但并未影响最终的效果。
const-string v2, “http://abc.com/loveopera/“
…
同样的方法,在.\classes\路径下的aq.smali中搜索关键字”socket://“,将所有搜索到的结果修改为如下形式:
const-string v3, “socket://abc.com/loveopera/”同样,我没有修改其中内容为"socket://do_not_use_me:0″的一行,也没有影响最终的结果。
4.打包
保存所有的改动。再次回到CMD中,输入:
java -jar smali.jar classes该命令将整个classes文件夹重新打包为.dex文件,此时在当前目录下会得到打包好的文件,名为: out.dex,将其重命名为classes.dex。
再次打开Opera_Mini_6_5_Android.zip压缩包,删除压缩包中原有的classes.dex文件及META-INF文件夹,并将刚才修改好的classes.dex文件添加到压缩包中。
5.签名
解压缩签名工具Auto-Sign.zip,将上一步中修改好的Opera_Mini_6_5_Android.zip文件放入解压后的Auto-Sign文件夹中,双击运行其中的 sign.bat 。
6.完成
不出意外的话,在Auto-Sign目录下,你会得到一个名为 your_app_signed.apk 的文件,这就是你想要的,大功告成。
from http://miaoo.in/opera-mini-android-6-5-modify-server.html
----------------------
修改Android版Opera Mini的服务器,实现翻墙
http://your-application-id.appspot.com/opm
socket://your-application-id.appspot.com/opm
一、修改Android版Opera Mini 4.2:
1. 先到此处下载并安装JRE:
http://www.java.com/en/download/index.jsp
2. 点击此处下载我打包的opm4修改包,将其解压至某目录,这里以D盘根目录为例,解压后的目录为:D:\opm4。
java -jar smali.jar -o D:\opm4\classes.dex D:\opm4\opm
(此行命令的意思是将opm文件夹打包成classes.dex文件)
5. 到此处下载Android版OPM的安装包:
下载后放入opm4文件夹。
8. 如果你在Auto-Sign的目录里面看见your_app_signed.apk的话,则证明已经修改工作已经完成了。在手机中安装前记得卸载先前的版本。
若修改包中有文件出现异样,请到如下网址下载:
下载反编译过的的Android版OPM源代码: http://opm-server-mirror.googlecode.com/files/android_opera_classes.zip
二、修改Android版Opera mini 5.1:
apktool d opera-mini-51.apk opm
(此命令意思是将你的apk文件解包到opm目录下,apk文件名和opm目录名是随意的)
3. 用文本编辑工具修改修改 opm\smali\f.smali 中的
http://mini5.opera-mini.net:80/
socket://mini5.opera-mini.net:1080
为自己搭建的Opera mini服务器地址,比如这里所示的用GAE搭建的镜像服务器。修改后保存。若用UltraEdit编辑,同样请删掉生成的bak文件。
apktool b opm opm51.apk
(此命令意思是将opm文件夹打包成opm51.apk文件,同样,目录名和文件名可以随意)
5. 将得到的opm51.apk重命名为opm51.zip,并拖放到Auto-Sign文件夹内,运行sign.bat来签名,得到your_app_signed.apk,即可以拷入手机安装了.