Aktivieren Sie USB-tethering programmatisch - es ist eine app, die hat es für 2.3
Habe ich gelesen, dass viele Fragen hier auf, SO dass Fragen, wie Sie zum aktivieren des USB-tethering programmgesteuert.
Die Antwort ist immer die gleiche, gewöhnliche Anwendungen kann es nicht, nur system-apps.
Doch für 2.3 Sie können herunterladen einer app im Markt, die es für Sie tun würden.
https://play.google.com/store/apps/details?id=org.tdtran.autousbtethering
Auf ICS (Android 4.0.3) funktioniert Sie nicht mehr.
Wie haben Sie es für 2.3? Ist es möglich, auch für 4.0?
- "Die Antwort ist immer die gleiche, gewöhnliche Anwendungen kann es nicht, nur system-apps." -- Genauer gesagt, es gibt nichts in der Android SDK zu verwalten Sie USB-tethering.
- Ja, so wie haben, die app zu verwalten, es zu tun? Es kann nicht in der SDK, aber es ist sicherlich möglich! Es war ein schmutziger trick? Ein exploit? Vielleicht war es gepatcht 4.0?
Du musst angemeldet sein, um einen Kommentar abzugeben.
mithilfe des folgenden Codes aktivieren Sie USB-tethering. ich did ' T-test in der Version 4.0.
ICS und oben: Zur Ausführung der Reflexion der Methode, die Anwendung erfordern würde, die
WRITE_SECURE_SETTINGS
Berechtigung.Dies ist nicht verfügbar, wenn das Telefon verwurzelt ist.
da dies ist einer der beliebtesten Seiten in den Google-Ergebnissen zu diesem Thema möchte ich dazu beitragen, meinen code, die überprüfung der verfügbaren Schnittstellen. Es funktioniert auf ein Gingerbread-Handy ich habe, aber nicht mein Galaxy S3.
Auf Samsumg Galaxy Tab 2 10.1 die Schnittstelle ist nicht als "usb0" aber "rndis0". Vielleicht ist das der gleiche für das Galaxy SII
Hafen "rndis0" aktiviert ist dynamisch nicht verfügbar in der der Tetherable-Schnittstellen-Liste.
Es wird Hinzugefügt, wenn der Benutzer die USB-Tethering option im Menü.
Die Funktion ConnectivityManager::setUsbTethering(bool) wird aufgerufen, wenn die option ausgewählt ist. Und diese Funktion ist nur für System-Anwendungen.
Ich weiß, das ist ein Alter thread aber ich hoffe das konnte einigen helfen, anderen Menschen in die Zukunft ,
Dass code war für mich in Android 4.4(mit root-Berechtigung)
code:
der trick ist, verwenden Sie reflektion , die Methode, die Veränderungen der usb-tethring heißt "setUsbTethering"
Lasse ich die gesamte Klasse, aber hier ist, was Sie brauchen:
drucken können Sie die gesamte Klasse Methoden mit dem folgenden code
dann rufen Sie
printClassMethod(ConnectivityManager.class)
Mehr Über, können Sie gehen auf die Klasse selbst, und überprüfen Sie die Methoden und Argumente benötigt.
um die Dinge funktionieren:
Sie müssen Ihre app als System-app,
Erklären in manifest : android:sharedUserId="android.uid.system"
hinzufügen writing secure Erlaubnis
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"
Signieren der apk mit google-Zertifikat-Schlüssel(apk-mit-system-Privilegien) und drücken Sie es nach /system/app /
Daran, dass usbTethering angeschaltet ist, während USB angeschlossen ist, so dass eine schönere Lösung zu sein um zu registrieren, um beide USB_STATE und USB_ATTACH und aktivieren/deaktivieren Sie es dementsprechend in der onReceive-Methode. (USB-tethering-Funktion wird automatisch ausgeschaltet, wenn das USB-de-attached)