Кто-нибудь знает, может ли системное приложение расширять VpnService в Android или нет?
Теперь я хочу разработать системное приложение, которое расширит VpnService. Но когда я вызываю метод cre ate () для инициализации экземпляра ParcelFileDescriptor. Я получил исключение в Android 5.0, как показано ниже:
08-23 20:47:35.482 12344-12365/com.vm.shadowsocks W/System.err: java.lang.SecurityException: Cannot find com.vm.shadowsocks.core.LocalVpnService
at android.os.Parcel.readException(Parcel.java:1546)
at android.os.Parcel.readException(Parcel.java:1499)
08-23 20:47:35.483 12344-12365/com.vm.shadowsocks W/System.err: at android.net.IConnectivityManager$Stub$Proxy.establishVpn(IConnectivityManager.java:1779)
at android.net.VpnService$Builder.establish(VpnService.java:768)
at com.vm.shadowsocks.core.LocalVpnService.establishVPN(LocalVpnService.java:467)
at com.vm.shadowsocks.core.LocalVpnService.runVPN(LocalVpnService.java:256)
at com.vm.shadowsocks.core.LocalVpnService.run(LocalVpnService.java:239)
Спасибо!
1 ответ
normal
(пользовательское) приложение может расширяться VpnService
( документация), поэтому я не знаю, почему системное приложение не может это сделать.
Однако, честно говоря, интерпретировать ваше сообщение об ошибке довольно сложно, не зная вашего кода. Кроме того, вы, возможно, захотите использовать существующую (с открытым исходным кодом) реализацию, например, strongSwan.