चूंकि यह इस विषय के लिए Google परिणामों में सबसे लोकप्रिय पृष्ठों में से एक है, मैं उपलब्ध इंटरफेस की जांच कर रहा हूं जो अपना कोड योगदान देना चाहता हूं। यह मेरे पास एक जिंजरब्रेड फोन पर काम करता है, लेकिन मेरे गैलेक्सी एस 3 नहीं।
// DETECT INTERFACE NAME
Log.i("UsbTethering","Detecting tetherable usb interface.");
String[] available = null;
ConnectivityManager connMgr = (ConnectivityManager)connectivityServiceObject;
Method[] wmMethods = connMgr.getClass().getDeclaredMethods();
for(Method getMethod: wmMethods)
{
if(getMethod.getName().equals("getTetherableUsbRegexs"))
{
try
{
available = (String[]) getMethod.invoke(connMgr);
break;
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
// DETECT INTERFACE NAME
if(available.length > 0)
{
for(String interfaceName : available)
{
Log.i("UsbTethering", "Detected " + String.valueOf(available.length) + " tetherable usb interfaces.");
Log.i("UsbTethering", "Trying to " + desiredString + " UsbTethering on interface " + interfaceName + "...");
Integer returnCode = (Integer)method.invoke(connectivityServiceObject, interfaceName);
if(returnCode == 0)
{
Log.i("UsbTethering", "UsbTethering " + desiredString + "d.");
return true;
}
else
{
Log.w("UsbTethering", "Failed to " + desiredString + "Usb Tethering. ReturnCode of method " + method.getName() + ": " + String.valueOf(returnCode));
}
}
}
"उत्तर हमेशा एक ही होता है, सामान्य अनुप्रयोग इसे नहीं कर सकते हैं, केवल सिस्टम ऐप्स।" - अधिक सटीक रूप से, यूएसबी टेदरिंग का प्रबंधन करने के लिए एंड्रॉइड एसडीके में कुछ भी नहीं है। – CommonsWare
हां, तो यह ऐप इसे कैसे प्रबंधित करता है? यह एसडीके में नहीं हो सकता है लेकिन यह निश्चित रूप से संभव है! क्या यह एक गंदे चाल थी? एक शोषण? शायद यह 4.0 में पैच किया गया था? –