Android 我可以使用SL4A启用USB连接吗?

Android 我可以使用SL4A启用USB连接吗?,android,sl4a,Android,Sl4a,我已经搜索了一个类/方法来启用USB连接,但没有找到。我想知道这是否仍然可能 作为参考,我使用了一个带有Cyanogenmod 7和Android 2.3.7的根HTC Wildfire 如果不可能,我希望有一个Java示例代码来实现它。不使用内置API(如您所检查的),这意味着不,如果您不愿意做一些工作,就不需要 但是,如果您使用的是Beanshell、JRuby或Rhino,那么按照“您可以直接调用Java调用”的建议,您可以“查看这些解释器的文档”了解如何做到这一点(尽管我找不到)。然而,

我已经搜索了一个类/方法来启用USB连接,但没有找到。我想知道这是否仍然可能

作为参考,我使用了一个带有Cyanogenmod 7和Android 2.3.7的根HTC Wildfire


如果不可能,我希望有一个Java示例代码来实现它。

不使用内置API(如您所检查的),这意味着不,如果您不愿意做一些工作,就不需要

但是,如果您使用的是Beanshell、JRuby或Rhino,那么按照“您可以直接调用Java调用”的建议,您可以“查看这些解释器的文档”了解如何做到这一点(尽管我找不到)。然而,在该页上,它指出:

“Beanshell和Rhino都可以直接访问android api。 然而,许多Android api调用需要上下文,这是由于 按照他们的运作方式,这些口译员没有。一个解决办法是 寻求……建议,不胜感激。”

根据,我相信需要一个
上下文
,尽管我可能错了

最后,您的最后一个选择是为您正在使用的任何解释器编码,并添加所需的调用。再次引用常见问题;“RPC层很容易扩展。”甚至还有一个简单的方法


祝你好运

如果您启用了root,您只需尝试使用SL4A或Android即可。我使用以下脚本:

#!/system/bin/sh
iptables -D droidwall-3g -m owner --uid-owner 0 -j RETURN
iptables -I droidwall-3g -m owner --uid-owner 0 -j RETURN
iptables -t nat -D POSTROUTING -o rmnet0 -j MASQUERADE
iptables -t nat -I POSTROUTING -o rmnet0 -j MASQUERADE
echo 1 > /sys/class/usb_composite/rndis/enable
ifconfig usb0 192.168.42.129 up
echo 1 > /proc/sys/net/ipv4/conf/usb0/forwarding
echo 1 > /proc/sys/net/ipv4/conf/rmnet0/forwarding

也许对于其他设备(我的是SE Xperia X10),您需要调整类似
/sys/class/usb\u composite/rndis/enable

如何禁用?你把所有的东西都冲洗掉了?禁用?通常我只是启动类似的脚本,将USB切换到存储模式(也在Android的背后)。iptables规则通常只是永久存在(请注意“-D”命令可防止多次使用脚本的规则管道化)。要阻止从USB访问网络,您可以将任何值(rndid/enable、rmnet0/forwarding、usb0/forwarding)设置为“0”。如果您没有iptables,您可以在设备上启动一些SOCKS或任何代理。