2013-06-26 3 views
3

Позвольте мне описать вас, что я хочу: я хочу создать «главное приложение» и установить его так, чтобы при включении телефона он сразу же попал в главное приложение. Пользователь никогда не сможет выйти из этого приложения (это будет использоваться для чего-то вроде родительского контроля), и он может запускать только другие приложения из него.Android, как начать работу с Boot-up

В основном это будет как «пользовательский рабочий стол».

Следует подчеркнуть, что это приложение никогда не выходит. Пока телефон запущен, это единственная среда, к которой пользователь имеет доступ.

Теперь, после того как я объяснил, что мне нужно, мне понадобится ваша помощь, чтобы рассказать мне, что я ищу. Это какая-то «стандартная пусковая установка», о которой я все время слышу? Или как это называется? Как я могу это сделать?

Thanks

+2

вы не можете сделать приложение никогда не выйдет из его вредоносной программы, и эта функциональность ограничена Android 4.0 выше! –

+0

Я сделал с доступом к bootupservice –

+1

Я бы сказал, создайте приложение для запуска и сделайте его по умолчанию. Во время выполнения tjhat вы могли бы контролировать почти все с правом разрешения – Dediqated

ответ

5

Добавить это в манифест.

<receiver 
      android:name=".Bootupclass" 
      android:enabled="true" 
      android:permission="android.permission.RECEIVE_BOOT_COMPLETED" > 

</receiver> 

Bootupclass

public class Bootupclass extends BroadcastReceiver{ 

    @Override 
    public void onReceive(Context context, Intent intent) { 
     //write intent here 
    } 

} 
+0

И я должен начать свою деятельность внутри 'onReceive'? Также, как удалить приложение позже? –

+0

установить такое же приложение или другое приложение –

+0

ваш ответ не работает. и мой телефон укоренен –

1

Что спрашивается в теле вопроса отличается от названия вопроса.

Прослушивание BOOT_COMPLETED будет делать в буквальном смысле то, что требуется по названию - дать управление приложению один раз, когда устройство включено или перезапущено.

Этого недостаточно для достижения реальной цели - чтобы пользователь не покидал приложение и не доходил до обычного экрана - когда пользователь нажимает «exit» или «home», он практически покинет ваше приложение. Хотя вы можете перехватить кнопку «Выход» и не дать ей отказаться от вашего приложения, «домашняя» кнопка не может быть заблокирована программно.

Для того, чтобы сделать и использовать как родительский контроль и предотвратить доступ пользователей к нежелательным приложениям, вам необходимо реализовать «пользовательский домашний экран» или «пользовательский запуск» (что то же самое).

Это довольно большая тема, но это, кажется, хорошая отправная точка: Android - creating custom launcher.

И потому, что автор настаивает на «точного кода», чтобы сделать ваше приложение, чтобы начать вместо домашнего экрана (после загрузки или нажав на кнопку «домой»), вам необходимо следующее в манифесте:

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.HOME"/> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 

После установки нажмите кнопку «домой» - вам будет предоставлен выбор стандартной пусковой установки или вашего приложения. Проверьте «использовать по умолчанию» и выберите свое приложение - теперь он начнется вместо обычного домашнего экрана.

Остерегайтесь, однако, что существует несколько известных проблем с пользовательскими пусковыми установками. Один из них - вы должны заблокировать доступ к настройкам, иначе пользователь может вернуться к стандартной пусковой установке. Кроме того, после обновления вашего приложения (т. Е. Вы отправляете новую версию) пользователю будет задан вопрос о том, какой домашний экран использовать, и вы можете выбрать пусковую установку по умолчанию.

2

мне нужен кто-то, чтобы дать мне точный код, необходимый, чтобы сделать приложение:

Здесь идет,

Если вы делаете приложение в качестве приложения пусковой установки, и если это ТОЛЬКО Launcher в вашей системе, он, конечно же, будет запущен при включении вашего устройства. А также, когда вы нажимаете кнопку «домой», так как ваше приложение является единственным средством запуска в системе, то оно будет запущено.

так,

1) начать на 2 загрузки) будет действие по умолчанию при нажатии кнопки домой ("рабочего стола")

оба могли быть объединены в 1.

Вы упомянули, что ваш телефон укоренен, поэтому самый простой способ добиться того, что вам нужно, будет

1.Установите свое приложение только этими строками в пределах m anifest. то есть в течение вашего первого действия. Больше ничего не требуется. (Это сделает ваше приложение как приложение пусковой установки)

<intent-filter> 
    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.HOME"/> 
    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

2.Un установить приложение пусковое по умолчанию внутри устройства.

+0

В конце концов мне удалось заставить его работать с этим точным решением, и все отлично работает. –

1

I must stress out, it is important that this app never exits Это, я считаю, невозможно.

Из вашего требования кажется, что вам требуется решение MDM. В дополнение к API-интерфейсам администрирования Android 2.2 были доступны. Выезд http://developer.android.com/guide/topics/admin/device-admin.html

Пользователь должен будет установить ваше приложение и разрешить ему быть администратором устройства. (Вы можете видеть доступных администраторов в настройках -> Местоположение и безопасность -> Администратор устройства). Теперь, будучи администратором, вы можете управлять функциями на устройстве, например. запретить удаление приложений, предотвратить установку определенных приложений, запретить запуск определенных приложений. протрите устройство, если безопасность нарушена и т. д. Вы также можете предотвратить удаление своего приложения.

Доступны приложения с такими функциями. Я могу назвать Maas360 с головы. Отказ от ответственности: я не пробовал самостоятельно управлять устройством apis.