问题标签 [android-vpn-service]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - VPNservice.builder.addAddress - 它有什么作用?
根据官方文档:
但是,我仍然不清楚,挖掘 dns66 的源代码和 Netguard 的源代码也没有多大帮助。
我不确定它应该是服务器地址,但我想不出其他任何有意义的东西。如果我想在之前实施 localVPN,我应该设置什么地址establish()
?
这是 dns66 的来源,但我不明白为什么它会添加这些地址(如果一切“失败”,它怎么知道 192.168.50.1 会起作用)?:
android - 如何观察来自android前台(vpn)服务的集合
我的 VPN 隧道有一个带有“阻止/允许逻辑”的单例类。发送到隧道的数据包不会被发送,应用程序可以根据允许列表绕过,因此它可以作为防火墙的简单实现。
我想要做的是,当我更改Set<String>
被阻止的应用程序包名称时,我希望服务线程vpnservice.builder.establish()
使用这个被阻止的应用程序集再次运行。
一个明显的选择 - 如果服务是“普通”前台服务extends LifecycleService
,如此处所示。但是,我的服务必须扩展android.net.VpnService
,这没有实现LifecycleOwner
。此处显示了一种可能的实现方式(需要进行一些修改)。
我的问题是:
- 在我的单例类中,我的 VPN 服务是否有更好、更清洁、更优雅的方式来观察我的blockedPackageName 集合的变化?
- 如果没有其他方法,是否会
LifecycleOwner
以我期望的方式实施工作(基本上我是如何描述的)?
/li>lifecycle.handleLifecycleEvent(Lifecycle.Event.XXXX);
如果(2),添加我的服务的 onCreate 和 onDestroy 方法就足够了吗(见下文)?除了防止内存泄漏之外,这些还有什么作用吗?
PS:我阅读了关于生命周期组件的官方文档,但我找不到足够的代码示例来说明问题。
android - How android Always-on VPN internally works?
I can read from developer.android.com about how to support Always-on VPN from the VPN application point of view.
But couldn't find any information how the android system internally implements this feature?
- Does the android system wake up periodically and check if the VPN service is running and if not then tries to start the specified VPN service?
- Does this happen on a regular interval basis?
- What if there is no network connectivity? Will android wait until the n/w conn is restored to start the VPN service?
Thanks in advance
java - 以编程方式创建 VPN 配置文件 Android
我一直在解析网络以寻找在 Android 上创建 VPN 客户端的方法。我似乎找不到任何关于如何做到这一点的好资源。
目标是,我希望能够使用 Android 中的内置 VPN 功能(可能以编程方式添加新连接)或其他方式设置 VPN。
我确实在文档中遇到过,VpnService
但不清楚如何使用它。有没有人有这样做的一个很好的例子,这可能与此时的Android SDK
as 一样吗?
android - 如何在不使用“密钥”的情况下以编程方式连接 vpn 服务器?
我想连接 VPN 服务器,但我不想使用密钥。目前,我发现以编程方式创建 vpn 连接的代码片段如下:
MyVpn客户端:
我的VPN连接:
我的VPN服务:
上面的代码来自以下网址:
我已经尝试过,但没有密钥我没有得到任何解决方法。请帮忙。
android - VpnService:更改允许的应用程序?
我有一个 VpnService,其中包含一些允许的应用程序和一些不允许的应用程序,这些应用程序来自一个可能随时更改的列表。
在这种情况下,应用程序只是不允许“com.android.chrome”。Vpn 实际上不处理任何传入的数据包,所以我用它来阻止流量,这意味着任何不是“不允许”列表的应用程序都无法访问互联网。
问题:如果想在运行时更改不允许的应用程序列表怎么办?我是否必须有外部服务或其他东西来控制 VpnService 还是有其他方法可以做到这一点?
我的第一个想法是使用不同参数检测并重新启动 Vpn 的外部服务,但对于这样的事情似乎有点复杂。
我还认为它可以通过另一种方式来完成,即拥有一个完全正常工作的 Vpn 并通过应用程序过滤数据包。但是(假设有一种方式将数据包绑定到应用程序)我将如何确定哪些数据包与哪些应用程序相关联?
java - 将我的 IP 数据包数据转换为字符串的正确方法是什么?
当我收到带有我的 Android VpnService的 IP 数据包时,我首先读取标头(如此处),然后我尝试按如下方式打印接收到的数据:
这导致输出如下:
数据包数据:����5��(��������������������www�google.com������
或者来自未加密网页的另一个示例:
数据包:IP Version=4,Header-Length=20,Total-Length=60,Destination-IP=xx.xx.xxx.xx,Hostname=yyyyy.zzz,Source-IP=10.1.10.1,Protocol=17,Data -剩余=40
数据包数据:N����5��(@�F������������������m�posttimees�ee������
我尝试了几种不同的字符串编码类型,我认为这不是问题。
我错过了什么步骤?
android - 检查 Android 中的 VPN 连接是否处于活动状态并显示消息?
我在我的非根 Android 4.4 设备上有一个第三方 VPN 应用程序,并且想编写一个后台服务来监控 VPN 连接并在 VPN 连接打开时提醒用户。
android - 有人知道系统应用程序是否可以在 Android 中扩展 VpnService 吗?
现在,我想开发一个可以扩展 VpnService 的系统应用程序。但是当我调用方法“建立()”来初始化 ParcelFileDescriptor 的实例时。我在 android 5.0 中遇到了一个异常,如下所示:
谢谢!
android - 如何以编程方式在 android 中使用本地 vpn 跟踪用户浏览器 url?
如何以编程方式在 android 中使用本地 vpn 跟踪用户浏览器 url?我正在使用 ToyShark 本地 vpn 代码。通过使用这个库,我可以在套接字数据工作者中捕获用户浏览器操作。
上面写TCP方法有行
通过使用上面的 writeTCP 日志,我可以跟踪用户 url,但 url 结果会像
我怎样才能从下面的代码行中获得正确的完整网址。网址是www.videocond2h.com