首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Android应用程序更改网络运营商

使用Android应用程序更改网络运营商
EN

Stack Overflow用户
提问于 2011-05-12 18:09:41
回答 1查看 4.4K关注 0票数 6

我正在尝试开发一个Android应用程序,它可以在地图上显示各种网络运营商的信号强度。问题是,改变网络运营商的唯一方法是手工操作。

关于如何在不手动更改的情况下获得此信息,您有什么想法吗?我认为有一些内部/私有的Android类可以做到这一点。

EN

回答 1

Stack Overflow用户

发布于 2011-12-09 23:31:00

您需要使用Google的一个或多个内部API来完成此操作。默认情况下,由于各种(通常是好的)原因,Android应用程序不能使用它们。例如,用于开启和关闭系留并对其进行配置的API不是公共API,并且不能由第三方应用直接调用。

您需要做两件事。首先,下载Android源代码,找到您需要列出和切换运营商的API。你可以找到安卓的源代码,并下载说明,here

其次,您需要使用反射来调用这些API上的方法。要做到这一点,最好的方法是编写一个代理类,这也是我自己使用过的tethering API。为它提供与您想要使用的API相同的方法,并在每个方法中使用反射来调用API方法。任何其他技术要么(a)在不将部分Android源代码添加到类路径的情况下无法编译,要么(b)将编译但在部署时爆炸。

请注意,最好在Nexus品牌的设备上执行此操作,因为这上面有普通的Android代码。我(成功地)尝试编写一个主屏小工具来打开和关闭系留功能,这在Nexus One上有效,但在三星Galaxy Tab P1000上无效。该设备支持tethering,但作为移植工作的一部分,三星已经修改了操作系统的这一部分。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5976440

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档