telegram android 源码分析 (一)自动设置代理

2023-05-16

比如自动设置mtproxy代理,冗长的代码我们怎么去找?

1)首先我们发现点代理链接能弹对话框,们可以在strings.xml中搜索得到:

 <string name="UseProxyTelegramInfo2">This proxy may display a sponsored channel in your chat list. This doesn\'t reveal any of your Telegram traffic.</string>
    <string name="UseProxyForCalls">Use proxy for calls</string>

2)我们在项目中寻找:UseProxyTelegramInfo2,发现D:\Telegram\TMessagesProj\src\main\java\org\telegram\messenger\AndroidUtilities.java

中有函数进行引用:

public static void showProxyAlert(Activity activity, final String address, final String port, final String user, final String password, final String secret) 

函数最后提及:

ConnectionsManager.setProxySettings(true, address, p, user, password, secret);
            NotificationCenter.getGlobalInstance().postNotificationName(NotificationCenter.proxySettingsChanged);

这两句非常关键,调用了

D:\Telegram\TMessagesProj\src\main\java\org\telegram\tgnet\ConnectionsManager.java

文件中设置代理的函数。那么我们也可以在合适的位置自己调用,比如该类的

init函数中。

 

3)如果想自己动态设置代理,那么可以使用https在某个服务器下载JSON格式的配置文件,

得到里面的参数,设置即可。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

telegram android 源码分析 (一)自动设置代理 的相关文章

随机推荐