如何在 Android 模拟器中启用 *** 支持
Posted
技术标签:
【中文标题】如何在 Android 模拟器中启用 *** 支持【英文标题】:How to enable *** support in Android Emulator 【发布时间】:2011-06-03 04:25:37 【问题描述】:我喜欢在 android 模拟器中使用 PPTP ***。我的 *** 提供商是 Witopia。这些设置适用于真机 (HTC Desire)。
它不起作用,一段时间后连接超时。
adb logcat 打印:
D/***Manager( 1527): succeeded to connect to *** service
D/com.android.settings.***.AuthenticationActor( 1527): ~~~~~~ connect() succeeded!
I/SProxy_mtpd( 2211): Stop *** daemon: mtpd
D/***Settings( 1527): received connectivity: Witopia: connected? CONNECTING err=0
D/SProxy_mtpd( 2211): mtpd is stopped after 0 msec
D/SProxy_mtpd( 2211): stopping mtpd, success? true
I/SProxy_racoon( 2211): Stop *** daemon: racoon
D/SProxy_racoon( 2211): racoon is stopped after 0 msec
D/SProxy_racoon( 2211): stopping racoon, success? true
D/***Service( 2211): Local IP: 10.0.2.15, if: eth0
D/***Service( 2211): *** UP: down
I/SProxy_mtpd( 2211): Start *** daemon: mtpd
D/SProxy_mtpd( 2211): mtpd is running after 0 msec
D/SProxy_mtpd( 2211): service not yet listen()ing; try again
D/mtpd ( 2224): Waiting for control socket
D/mtpd ( 2224): Received 19 arguments
I/mtpd ( 2224): Using protocol pptp
I/mtpd ( 2224): Connecting to 203.131.247.213 port 1723
I/SProxy_mtpd( 2211): got data from control socket: 19
I/mtpd ( 2224): Connection established (socket = 10)
D/mtpd ( 2224): Sending SCCRQ
D/mtpd ( 2224): Received SCCRP -> Sending OCRQ (local = 32087)
I/mtpd ( 2224): Tunnel established
D/mtpd ( 2224): Received OCRQ (remote = 52286)
I/mtpd ( 2224): Session established
I/mtpd ( 2224): Creating PPPoX socket
F/mtpd ( 2224): Socket() Address family not supported by protocol
后跟用户消息:无法连接到网络。你想再试一次吗?
同时在adb logcat
E/***Service( 2211): onError()
E/***Service( 2211): java.io.IOException: Connecting timed out
E/***Service( 2211): at com.android.server.***.***Service.waitUntilConnectedOrTimedout(***Service.java:206)
E/***Service( 2211): at com.android.server.***.***Service.onConnect(***Service.java:136)
E/***Service( 2211): at com.android.server.***.***ServiceBinder$2.run(***ServiceBinder.java:114)
E/***Service( 2211): at java.lang.Thread.run(Thread.java:1096)
I/***Service( 2211): disconnecting ***...
D/***Settings( 1527): received connectivity: Witopia: connected? DISCONNECTING err=0
I/SProxy_mtpd( 2211): Stop *** daemon: mtpd
D/SProxy_mtpd( 2211): mtpd is stopped after 0 msec
D/SProxy_mtpd( 2211): stopping mtpd, success? true
I/SProxy_racoon( 2211): Stop *** daemon: racoon
D/SProxy_racoon( 2211): racoon is stopped after 0 msec
D/SProxy_racoon( 2211): stopping racoon, success? true
D/***Service( 2211): onFinalCleanUp()
I/***Service( 2211): restore original suffices --> null
D/***Settings( 1527): received connectivity: Witopia: connected? IDLE err=101
我猜这要么是权限问题,要么是安卓模拟器不支持。
我的平台是 MacOSX,模拟器运行的是 Android 2.2。
这个问题与:
https://***.com/questions/3223344/does-***-in-the-android-emulator-2-2-work https://***.com/questions/3442865/setting-up-a-***-in-the-emulator will android emulator access a network using a *** on the host machine【问题讨论】:
我买了另一台设备(iRobot 平板电脑)并在那里试用了 ***。关于Address family not supported by protocol
的相同消息。所以这可能是内核问题?
检查这些行...com.android.server.***.***Service.onConnect(***Service.java:136) E/***Service(2211): at com.android.server.***.***ServiceBinder$2 .run(***ServiceBinder.java:114)
【参考方案1】:
是的,这就像内核问题:
-
没有 tun.ko 模块(参见http://forum.xda-developers.com/showthread.php?t=630703&page=2)
不支持 lkm(可加载内核模块)(http://code.google.com/p/get-a-robot-***c/issues/detail?id=100)
所以我认为您需要自定义内核 http://code.google.com/p/batterymine/wiki/BuildingInModuleSupport
您还需要将其他模块复制到模拟器:slhc.ko、ppp*.ko
【讨论】:
我想就是这样,不知道可以在模拟器中安装自定义内核!非常感谢,西布尼克! @Sebastian Roth:你能告诉我模拟器需要哪个内核吗?我检查了这个链接 ttp://forum.xda-developers.com/showthread.php?t=630703&page=2,但是它的程序是针对 Nexsus 的,模拟器会不会一样,我在哪里可以得到 tun.ko, slhc.ko, ppp*.ko 用于模拟器(API 级别 15)。我还需要其他模块吗?!【参考方案2】:我在使用 2.2 模拟器时遇到了同样的问题。我切换到 4.2 的模拟器,它通过 *** 运行良好。
【讨论】:
以上是关于如何在 Android 模拟器中启用 *** 支持的主要内容,如果未能解决你的问题,请参考以下文章
如何在适用于 Android 的 Eclipse 模拟器中启用 GPS [重复]
如何使用 USB 声卡在 Windows 10 上启用 android 模拟器声音?