Как запустить мое приложение до запуска AndroidTV?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Гость
 Как запустить мое приложение до запуска AndroidTV?

Сообщение Гость »

У меня есть приложение для Android, которое я хочу запускать при запуске (программа запуска), похожее на Projectivity Launcher. Мне удалось настроить его на запуск при запуске, но он запускается примерно через 10 секунд после запуска интерфейса Android. На самом деле, я не хочу видеть интерфейс Android при запуске, только мое приложение, как в Projectivity.
Заранее спасибо за дальнейшие ответы
Мне удалось позвонить мой пакет, когда когда-либо пакет Android назывался com.google.android.tv launcher
Вот мой загрузочный приемник. Моя функция — это «setdefaultlauncher», который я вызываю в части «onReceive»:

Код: Выделить всё

package com.ansetech.hospitv.receiver;
import android.content.BroadcastReceiver;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Build;
import android.util.Log;

import com.ansetech.hospitv.activity.HomeActivity;
import com.ansetech.hospitv.service.DownloadService;
import com.ansetech.hospitv.service.NotificationService;
import com.ansetech.hospitv.service.YourBootService;
import com.ansetech.hospitvlib.util.DUtils;

/**
* Starts download service on bootup
*/
public class BootReceiver extends BroadcastReceiver {
private static final String LOG_CAT = "BootReceiver";

@Override
public void onReceive(Context context, Intent intent) {
// Set your app as the default launcher
//if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED)) {
// Your code to handle boot completion goes here
// For example, you can start a service or launch an activity
setDefaultLauncher(context);

//}

// Démarrage des services.
try {
DUtils.caveman("BootReceive startForegroundService NotificationService....");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
context.startForegroundService(new Intent(context, NotificationService.class));
} else {
context.startService(new Intent(context, NotificationService.class));
}
} catch (Exception e) {
Log.e("BootReceiver", "Starting service FAILED -> NotificationService", e);
}

try {
DUtils.caveman("BootReceive startForegroundService DownloadService....");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
context.startForegroundService(new Intent(context, DownloadService.class));
} else {
context.startService(new Intent(context, DownloadService.class));
}
} catch (Exception e) {
Log.e("BootReceiver", "Starting service FAILED -> DownloadService", e);
}

// Start YourBootService
try {
DUtils.caveman("BootReceive startForegroundService YourBootService....");
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
context.startForegroundService(new Intent(context, YourBootService.class));
} else {
context.startService(new Intent(context, YourBootService.class));
}
} catch (Exception e) {
Log.e("BootReceiver", "Starting service FAILED ->  YourBootService", e);
}

// Start HomeActivity
try {
DUtils.caveman("BootReceive start HomeActivity....");
Intent startIntent = new Intent(context, HomeActivity.class);
startIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(startIntent);
} catch (Exception e) {
Log.e("BootReceiver", "Starting HomeActivity FAILED", e);
}
}

private void setDefaultLauncher(Context context) {
PackageManager packageManager = context.getPackageManager();
ComponentName componentName = new ComponentName(context, HomeActivity.class);
Intent selectorIntent = new Intent(Intent.ACTION_MAIN);
selectorIntent.addCategory(Intent.CATEGORY_HOME);
selectorIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
selectorIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
selectorIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

// Disable the default launcher (Android portal)
packageManager.setComponentEnabledSetting(
new ComponentName("com.google.android.tvlauncher",  "com.google.android.tvlauncher.MainActivity"),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);

// Enable your app as the default launcher
packageManager.setComponentEnabledSetting(componentName,
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP);

// Start the selector intent to make your app the default launcher
context.startActivity(selectorIntent);
}
}


Вот мой манифест:




Подробнее здесь: https://stackoverflow.com/questions/782 ... v-launcher
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как запустить мое приложение до запуска AndroidTV?
    Гость » » в форуме JAVA
    0 Ответы
    17 Просмотры
    Последнее сообщение Гость
  • Приложение на базе AndroidTV не отображается в результатах поиска
    Anonymous » » в форуме Android
    0 Ответы
    32 Просмотры
    Последнее сообщение Anonymous
  • Как отобразить изображение 4k на AndroidTV с помощью Java?
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Как отобразить изображение 4k на AndroidTV с помощью Java?
    Anonymous » » в форуме JAVA
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Как отобразить изображение 4k на AndroidTV с помощью Java?
    Anonymous » » в форуме Android
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»