2012-09-29 110 views
2

我正在研究將手機連接到不旋轉屏幕的程序。我找到了注入觸摸和關鍵事件的方法。我遇到的唯一問題是如何讓它保持景觀。我發現我可以在設置中設置USER_ROTATION和ACCELEROMETER_ROTATION。但是,如果程序要求進入肖像模式,它會卡住,永遠不會旋轉。假設用戶具有root用戶訪問權限,我如何才能全局強制所有內容進入風景?如何在Android中全局鎖定屏幕方向?

回答

2

我在這個項目的源代碼中找到了答案。 http://code.google.com/p/perapp它可以通過讀取系統日誌和創建系統級別對話框來完成,該對話框允許在其他任何地方顯示。你可以隱藏它們並讓它們強制屏幕進入風景。

0

我不知道你是如何做到這一點的,但請記住操作系統的某些部分並不是要旋轉或不能旋轉(即你的主屏幕永遠不會旋轉)。您可能不得不採取屏幕顯示內容的圖像,然後將其旋轉90度,然後將其顯示在目標屏幕上。

+0

我不能那樣做。它通過HDMI將圖像發送到汽車音響。汽車立體聲通過藍牙發送觸摸事件。會聽廣播嗎?塔斯克這樣的事情會如何去做呢? – kagronick

+0

老實說,我沒有任何經驗。希望別人能回答這個問題。 –

+0

@ACArcana:實際上,您的主屏幕*可以旋轉。例如,當我[手機](https://play.google.com/store/devices/details/Vehicle_Dock?id=galaxy_nexus_hspa_car_dock&hl=en)我的手機時,主屏幕旋轉爲橫向。 – josh3736

3

你可能會迫使活動對景觀只能使用清單

<activity android:screenOrientation="landscape" android:configChanges="orientation|keyboardHidden" android:name="...."> 

這應該工作,你也可能需要重寫隱藏

如果被證明硬件鍵盤可能發生的任何方位/設置
+0

這不是問題。在活動中改變方向很容易。我在問如何在全球範圍內做到這一點。我發佈了答案並將其標記爲已接受。 – kagronick

0

我認爲你使用的ROM必須有這個選項,在一些三星設備中有鎖定屏幕方向的選項(但是它的操作系統選項)。