2013-01-09 23 views
10

Jak zrobić naszą aplikację, która działa jak aplikacja trybu kiosku (SureLock lockdown app). Mam telefon LG E400 z systemem Android Android 2.3.6. Chcę opracować aplikację podobną do tej, którą potrzebuję do opracowania takiej aplikacji.Rozwijanie aplikacji uruchamianej w trybie kiosku w Androidzie

Czy ktoś może mi pomóc w opracowaniu takiej aplikacji na własną rękę.

Moje wymagania: Buty Android urządzenia z mojej aplikacji. Dla tej aplikacji wszystkie przyciski sprzętowe są wyłączone (Strona główna, Wstecz, Menu), podobnie jak w aplikacji SureLock.

+0

Zarówno zaakceptowana odpowiedź, jak i odpowiedź z większością głosów w górę ** nie blokują całkowicie aplikacji w trybie kiosku **. Istnieją dwa zduplikowane pytania na temat tego problemu, więc nie odpowiem na to pytanie, ale mam tu odpowiedź z zaletami i wadami różnych rozwiązań: https://stackoverflow.com/a/43644803/2888763 –

Odpowiedz

6

Jeśli twoja aplikacja działa jak ekran główny i nie masz zainstalowanego żadnego ekranu głównego (lub domyślnie sprawdziłeś swoją aplikację), uruchomi się po starcie i nie będziesz mógł go zamknąć. Chyba, że ​​jakoś zabijesz zadanie, ale nie można temu zapobiec.

Twoja aplikacja musi użyć

android.intent.category.HOME 

zamiar być pierwszy widoczny aplikacja na bagażniku.

Jeśli chcesz niektóre źródła można spojrzeć na ADW Launcher Anderweb za https://github.com/AnderWeb/android_packages_apps_Launcher

+0

Dzięki za pomoc . Ale jak mogę wyłączyć przyciski, gdy moja aplikacja jest uruchomiona. Mam na myśli wyłączenie funkcji przycisków sprzętowych (przyciski Back, Home i menu) – PrasadM

+0

http://stackoverflow.com/questions/2000102/android-override-back-button-to-act-like-home-button Oto przykład Przycisk powrotu. Być może będziesz musiał również złapać przycisk wyszukiwania. Dom nie powinien stanowić problemu, ponieważ twoja aplikacja będzie aplikacją domową. –

+0

co z ostatnimi? Wydaje się, że jest to problem ... – JohnyTex

26

Ok ... po godzinach zmaga się z tym moim siebie i nic na znalezienie netto warto .... (nie wymaga zakorzenienia z telefonu)

przycisk Start ::::

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

obsługiwać domowy dno ...

przycisk Powrót ::::

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

Przez długie naciśnięcie przycisku domu (lub ostatniej aktywności aplikacji Google Now) lub ostatniego przycisku aplikacji ...

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

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

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

będzie potrzebował zgody ...

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

Ostrzeżenie ... może to potencjalnie zepsuć telefon ... Myślę, że ... powinieneś być w porządku, o ile masz zaznaczenie, zawsze zezwalaj na debugowanie urządzenia przez USB ... w ten sposób może zmienić kod i ponownie wdrożyć go z komputera. – Clifford

+1

Zawsze można uruchomić bootloader za pomocą klawiszy sprzętowych i flashować stamtąd. To nie byłoby zabawne, ale postawiłoby cię w bezpiecznej odległości od "cegiełki" – Vaiden

+0

@ Clifford przepracowany dziękuję – vnshetty