Android/Java:如何使用Tor Onion代理库?
我将使用tor连接到Android应用程序中的服务器,但不使用orbot。 我发现这个图书馆: 我补充说Android/Java:如何使用Tor Onion代理库?,java,android,proxy,tor,socks,Java,Android,Proxy,Tor,Socks,我将使用tor连接到Android应用程序中的服务器,但不使用orbot。 我发现这个图书馆: 我补充说 compile 'com.github.jehy:Tor-Onion-Proxy-Library:0.0.7' compile 'org.slf4j:slf4j-api:1.7.7' compile 'org.slf4j:slf4j-android:1.7.7' 到my build.gradle(模块:应用程序)和 } 接下来,我在onCreateView中添加了我
compile 'com.github.jehy:Tor-Onion-Proxy-Library:0.0.7'
compile 'org.slf4j:slf4j-api:1.7.7'
compile 'org.slf4j:slf4j-android:1.7.7'
到my build.gradle(模块:应用程序)和
}
接下来,我在onCreateView中添加了我的片段
int totalSecondsPerTorStartup = 4 * 60;
int totalTriesPerTorStartup = 5;
try {
boolean ok = onionProxyManager.startWithRepeat(totalSecondsPerTorStartup, totalTriesPerTorStartup);
if (!ok)
Log.e("TorTest", "Couldn't start Tor!");
}
catch (InterruptedException | IOException e) {
e.printStackTrace();
}
但我得到一个错误无法解析符号“OnOnOnProxy Manager”
。我按照Github上的说明操作
如果我将OnionProxy Manager
更改为OnionProxy Manager
我可以导入com.msopentech.thali.torOnOnOnOnProxy.OnionProxy Manager
,但我在开始时收到了一个以上的错误,重复
如果可以的话,请帮助我。谢谢 即使是我也面临着很多问题,如何让这个库正常工作。它没有明确的文件。因此,我创建了一个示例应用程序来展示如何使用该库,并向该存储库发送了一个pull请求。PR已被接受,现在可在该存储库中使用。您可以在此处查看示例应用程序:
int totalSecondsPerTorStartup = 4 * 60;
int totalTriesPerTorStartup = 5;
String fileStorageLocation = "torfiles";
OnionProxyManager onionProxyManager =
new AndroidOnionProxyManager(getActivity(), fileStorageLocation);
public void start(){
// Start the Tor Onion Proxy
try {
boolean ok = onionProxyManager.startWithRepeat(totalSecondsPerTorStartup, totalTriesPerTorStartup);
// Now the socket is open but note that it can take some time before the Tor network has everything
// connected and connection requests can fail for spurious reasons (especially when connecting to
// hidden services) so have lots of retry logic.
if (!ok)
// Log.e("TorTest", "Couldn't start Tor!");
return;
}
catch (InterruptedException | IOException e) {
e.printStackTrace();
}
这并不像粘贴给定的示例代码那么简单。首先,阅读更新后的文档。如果您无法理解它,请回头看看它是如何在示例应用程序中实现的。看看你应该如何在你的主要活动中使用它。如果希望与HttpClient一起使用,通过Tor(如图所示)从服务器发送/接收数据,则需要创建自己的自定义ConnectionSocketFactory和SSLConnectionSocketFactory类。查看从README.md复制的库。我已经测试过了。它不起作用!该github页面上的自述文件缺少[code]OnInProxy Manager OnInProxy Manager=new AndroidOnProxy Manager(this.getApplicationContext(),fileStorage位置);[/code]来自thailproject页面,它确实可以引导。如果调用OnOnProxy Manager.isBootstrapped();您可以获取状态。希望此帮助获得无法解析OnProxy Manager和totalTriesPerTorStartup以及totalSecondsPerTorStartup上的符号
int totalSecondsPerTorStartup = 4 * 60;
int totalTriesPerTorStartup = 5;
String fileStorageLocation = "torfiles";
OnionProxyManager onionProxyManager =
new AndroidOnionProxyManager(getActivity(), fileStorageLocation);
public void start(){
// Start the Tor Onion Proxy
try {
boolean ok = onionProxyManager.startWithRepeat(totalSecondsPerTorStartup, totalTriesPerTorStartup);
// Now the socket is open but note that it can take some time before the Tor network has everything
// connected and connection requests can fail for spurious reasons (especially when connecting to
// hidden services) so have lots of retry logic.
if (!ok)
// Log.e("TorTest", "Couldn't start Tor!");
return;
}
catch (InterruptedException | IOException e) {
e.printStackTrace();
}