2012-06-25 102 views
2

我正在嘗試構建一個自動化測試框架,用於檢查應用程序應該響應的基本事件,而不會崩潰。其中之一是檢查應用程序是否正確響應配置更改。現在,由於它是自動化的,我必須在風景和肖像之間切換仿真器的方向,並觀察它是否崩潰,PROGRAMMATICALLY。 [上限cuz有很多問題都與ctrl + F12或num pad 7有關]Android仿真器方向通過仿真器控制檯或ADB更改

我想弄清楚一個adb或模擬器控制檯命令來完成此操作。

我做了一個telnet到localhost:5554,並輸入了以下命令:

$傳感器狀態//給所有傳感器的啓用/禁用狀態

acceleration: enabled. 
magnetic-field: enabled. 
orientation: enabled. 
temperature: enabled. 
proximity: enabled. 
OK 

$傳感器取向

orientation = 0:0:0 

$傳感器設置方向90:0:0

OK 

我想這個不同的組合,並沒有作出迴應。要獲得在橫向模式下設置的值,我使用Ctrl + F12手動更改方向,並嘗試重新獲取方向傳感器狀態,令我沮喪的是,值沒有改變。

A certain blog also mentioned this particular command in ADB

$服務呼叫窗口18 I32 1

$服務呼叫窗口18 I32 0

用於切換取向。但是,我得到這個錯誤信息

結果:地塊(FFFFFFFC FFFFFFFF「........」)

這將是巨大的,如果我能得到一個解決的辦法。

+0

我也遇到了同樣的問題,這方面有任何更新? – Wang

回答

2

最後我想出了一個辦法。

首先,我將試圖澄清的問題一點點:

通常人們談論「旋轉」的AVD屏幕實際上意味着改變外觀佈局爲縱向/橫向(平板電腦的模仿旋轉)。可以通過在數字鍵盤上按「7/9」鍵或按Ctrl + Fn + F12來完成。在這種情況下,顯示屏的方向不會改變,有時顯示屏會出現左向右或從右向左的擾動,而不是自然的上下。這可以通過在Android設置中取消選中自動旋轉來解決。

但是,在某些情況下,我們希望看到重力傳感器的影響。我認爲這實際上與OP的問題有關。與GPS不同,沒有Eclipse的GUI工具可以做到這一點。 OP非常接近解決問題。但是,方向傳感器不正確,我們需要使用重力/加速度傳感器自動旋轉屏幕。 嘗試下面的命令,並與自動旋轉觀察顯示方向:

sensor set acceleration 9.77622:0:0 
sensor set acceleration 0:9.77622:0 
sensor set acceleration 0:0:9.77622 
+0

謝謝!這工作。 –

+0

嗨,我試過了。但是我沒有發現任何類似sensor的命令。唯一的命令是sensorservice.Mobile ph我使用的是samsung s3,s2和htc –

+0

相同@kundan – Ewoks