2013-01-09 134 views
10

如何使我們的應用程序像Kiosk模式應用程序(SureLock lockdown app)一樣運行。 我有LG E400紮根Android手機Android 2.3.6。 我想開發像Surelock這樣的應用程序,我需要開發這樣的應用程序。在android中開發應用程序在Kiosk模式下運行

任何人都可以幫助我自己開發這樣的應用程序。

我的需求: Android設備用我的應用啓動。 對於這個應用程序,所有硬件按鈕都被禁用(Home,Back,Menu),類似於SureLock應用程序。

+0

接受的答案和最有效的答案都不會完全鎖定您的應用程序在Kiosk模式**。有關於這個問題的SO有重複的問題,所以我不會回答這個問題,但我有一個答案在這裏與不同的解決方案的利弊:https://stackoverflow.com/a/43644803/2888763 –

回答

6

如果您的應用程序的行爲類似於主屏幕,並且您沒有安裝其他主屏幕(或將您的應用程序設爲默認值),它將在啓動時啓動,您將無法退出它。除非你以某種方式殺死任務,但這是不可預防的。

您的應用可以使用

android.intent.category.HOME 

意圖是在開機的第一個可見的應用程序。

如果你想要一些源,你可以看看Anderweb的ADW啓動 https://github.com/AnderWeb/android_packages_apps_Launcher

+0

感謝您的幫助。但是我怎樣才能禁用我的應用程序運行時的按鈕。我的意思是禁用硬件按鈕功能(後退,首頁和菜單按鈕) – PrasadM

+0

http://stackoverflow.com/questions/2000102/android-override-back-button-to-act-like-home-button 這裏是一個例子返回鍵。您可能還必須抓住搜索按鈕。家不應該是一個問題,因爲你的應用程序將是家庭應用程序。 –

+0

最近怎麼樣?這似乎是一個問題... – JohnyTex

26

好吧......這個我自我掙扎,並尋找有關的淨資產,而沒有....小時後(不需要生根手機的)

Home鍵::::

<category android:name="android.intent.category.HOME" /> 

處理家庭底部...

後退按鈕::::

@Override 
public void onBackPressed() { 
    // We doing this too stop user from exiting app, normally. 
    // super.onBackPressed(); 
} 

對於長按home鍵(近期的應用活動或谷歌現在)或近期的應用按鈕...

@Override 
protected void onPause() { 
    super.onPause(); 

    ActivityManager activityManager = (ActivityManager) getApplicationContext() 
      .getSystemService(Context.ACTIVITY_SERVICE); 

    activityManager.moveTaskToFront(getTaskId(), 0); 
} 

需要許可...

<uses-permission android:name="android.permission.REORDER_TASKS" /> 
+0

警告......這可能會阻止你的手機......我認爲......只要你有打勾總是允許你的機器USB調試......你的方式你應該沒問題可以更改代碼並從您的計算機重新部署它。 – Clifford

+1

您可以隨時使用硬鍵和閃光燈從啓動引導程序啓動。這不會很有趣,但它會讓你在「磚」的安全距離 – Vaiden

+0

@Clifford工作非常感謝 – vnshetty

相關問題