2011-05-29 26 views

回答

5

沒有導出到SDK功能在2G和3G之間切換。對於給定的設備,您可能可以找出專用功能,但除非應用程序使用系統密鑰進行了簽名,否則它無法工作。

通過打開飛行模式,您可以禁用無線電。

而且,您可以製作快捷方式直接打開相應的設置活動,而不必通過幾層菜單即可打開。

如果你自己構建,你可能會增加你真正想要的功能,但這可能對除了你自己以外的任何人都沒有用處。

編輯:進一步的細節 - 瞭解它是如何工作的,看在設置菜單碼(默認版本,給定的設備會有所不同):

http://android.git.kernel.org/?p=platform/packages/apps/Phone.git;a=blob;f=src/com/android/phone/Settings.java;hb=HEAD

編輯:AOSP不再擔任來自kernel.org。 的可瀏覽鏡像當前的手機存儲庫位於 https://github.com/android/platform_packages_apps_phone但是由於 代碼組織的演變,不存在Settings.java 那裏。可以使用git從 這個存儲庫重建上述版本,或者嘗試找出代碼在當前版本中遷移到 的位置。

您需要找出您希望切換的實現特定的NT_MODE_常量組。而且您需要能夠寫入安全設置,這需要使用系統密鑰進行簽名。除非是自定義構建,否則您可能無法訪問它。

+0

我的意思是你可以啓用/禁用3G,例如使用togglebutton? – Test2e31234234 2011-05-29 22:03:32

+0

請參閱上面的修改 – 2011-05-29 22:20:18

+0

現在感謝一堆,我得到我必須做的!謝謝一堆。 – Test2e31234234 2011-05-29 22:24:23

4

您無法從SDK應用程序啓用或禁用其中任何一種。

+0

是的,你可以,如果我能我會投票下來。 – Test2e31234234 2011-05-29 22:25:57

+1

@Ciehanski應用程序:正如Stratton先生指出的那樣,您可以使用飛行模式關閉無線電。但是,這並不禁用無線電。切換飛行模式也不允許先前禁用的無線電 - 例如,如果用戶禁用GPS,則無法啓用它。 「啓用」和「禁用」在Android中有非常具體的含義,飛行模式與它們無關。 – CommonsWare 2011-05-29 22:42:12

+0

@Ciehasnki Commonsware是絕對正確的,沒有SDK功能來做到這一點。在編輯中我談到的是平臺應用程序功能,它是SDK的一部分,除了擁有系統證書並知道該構建的私有內部細節的自定義構建的創建者之外不可部署。 – 2011-05-30 01:17:25

相關問題