Как сказать, используется ли устройство TouchWiz программно

StackOverflow https://stackoverflow.com//questions/25020738

Вопрос

Мне нужно проверить в моем коде, будь то устройство, которое я использую, включен TouchWiz.Я пытался использовать

если (android.os.build.manufacturaluer.equals (mailue_samsung))

Но оказывается, некоторые устройства сделаны Samsung и не используйте TouchWiz.

Как я могу понять это?

Это было полезно?

Решение

Проверьте установку по умолчанию .. Я верю, что TouchWiz - это задержка

final Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_HOME); 
final ResolveInfo res = getPackageManager().resolveActivity(intent, 0); 
if (res.activityInfo == null) {
    // should not happen. A home is always installed, isn't it?
} if ("android".equals(res.activityInfo.packageName)) {
    // No default selected     
} else {
     // res.activityInfo.packageName and res.activityInfo.name gives you the default app
} 
.

Другие советы

Вы можете получить список предпочтительных мероприятий от PackageManager.Используйте метод GETPREFERREDEDIVES ().

boolean isUsingTochwiz() {

    final IntentFilter filter = new IntentFilter(Intent.ACTION_MAIN);
    filter.addCategory(Intent.CATEGORY_HOME);

    List<IntentFilter> filters = new ArrayList<IntentFilter>();
    filters.add(filter);

    final String myPackageName = "INSERT TOUCHWIZ PACKAGE NAME HERE";
    List<ComponentName> activities = new ArrayList<ComponentName>();
    final PackageManager packageManager = (PackageManager) getPackageManager();

    packageManager.getPreferredActivities(filters, activities, null);

    for (ComponentName activity : activities) {
        if (myPackageName.equals(activity.getPackageName())) {
            return true;
        }
    }
    return false;
}
.

взята из: Как проверить, если мое приложениеэто установка по умолчанию

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top