Changement de réseau mobile mode (gsm, wcdma, auto)
Je veux changer de réseau par défaut en mode ie. gsm et wcdma ou automatique, par programmation, à partir du code sur Android.
Est-ce possible, et si oui, comment ?
Vous pouvez consulter le code source d'Android paramètres et de voir comment t-il. Je suppose que vous avez besoin est la "paramètres de sécurité" de l'autorisation, et ensuite vous pouvez modifier la valeur directement à partir de votre code. Ne sais pas si..
OriginalL'auteur Azhar Shaikh | 2012-04-16
Vous devez vous connecter pour publier un commentaire.
Réponse est PAS
Nous permet d'ouvrir directement l'application réglages de paramètres réseau mobile pour basculer entre "2G" et "autoriser 3G" des réseaux.Un commutateur direct n'est malheureusement pas possible.
Nous pouvons développer quelque chose qui va montrer réseau actuel et permettre à l'utilisateur de raccourci de l'application, où ils peuvent passer du réseau.
Je pense tout simplement à cause de la raison : la Sécurité et la Confidentialité de l'Utilisateur.
n'est-il pas possible, même sur un téléphone Enracinée ou en utilisant Android NDK?
Je n'ai aucune idée sur la tha.
Je ne peux pas, mais vous devriez l'ingénierie inverse paramètres par défaut de l'application, installez votre application dans /system/app/ et ajouter WRITE_SECURE_SETTINGS à uses-permission. Je ne sais pas pourquoi, mais si vous aurez plaisir =)
OriginalL'auteur MKJParekh
C'est possible, je l'ai fait.
Pour que cela fonctionne, votre application doit être signé avec le système de clé ou avoir transporteur privilège. Sinon, l'application va lancer
java.lang.SecurityException: No modify permission or carrier privilege.
Mon application fonctionne sur Android 5.1 Lollipop API(22) et est signé avec la clé du système, de sorte que c'est la seule configuration que je peux confirmer pour assurer que les travaux. Je ne peux pas confirmer le transporteur privilège approche.
AndroidManifest.xml
Ajouter cette autorisation à votre manifeste de l'application. Si vous utilisez Android Studio, il va probablement marquer cette ligne comme une erreur, car seul système les applications peuvent avoir cette autorisation. Si vous pouvez vous connecter à votre application avec le système de touches, ne vous inquiétez pas.
Obtenir De Réseau Préféré
Le retour est défini dans RILConstants.java, par exemple,
RILConstants.NETWORK_MODE_WCDMA_PREF
Définir La Méthode Préférée.
Le paramètre doit être fondée sur
RILConstants.java
, par exemple:RILConstants.NETWORK_MODE_LTE_ONLY
C'est une méthode utilitaire pour accéder à l'caché méthodes de l'API.
Bien sûr! Il y a plus d'une façon de le faire. Je crois que lorsque vous exécutez à travers Android Studio, il s'installe avec plus de privilèges, de sorte qu'il fonctionne, été un certain temps maintenant, donc je ne me souviens pas des détails.
C'est une excellente réponse! Merci. @BamsBamx vous dites que vous êtes en cours d'exécution dans le Dispositif de l'Émulateur ou sur un téléphone?
Je l'ai fait dans un vrai appareil, Sony Xperia Z3 Compact course 6.0.1 @user1147688
Et est-il un stock, mais enraciné ROM?
OriginalL'auteur Tulio F.
Ce n'est pas une réponse, mais en expansion sur Tulio-F de la réponse.
La RILConstants.java contenir les éléments suivants:
Où:
** = "AVAILABLE Application Settings menu"
OriginalL'auteur not2qubit