문제

사용중인 장치가 TouchWiz가 활성화되어 있는지 여부를 확인해야합니다.

를 사용해 보았습니다

if (android.os.build.manufacturer.equals (manufact_samsung))

그러나 일부 장치가 삼성 전자가 만들어지고 터치 와이즈를 사용하지 마십시오.

어떻게 이것을 알아낼 수 있습니까?

도움이 되었습니까?

해결책

기본 실행기를 확인하십시오. 나는 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에서 기본 활동 목록을 가져올 수 있습니다.getPreferRedActivities () 메서드를 사용하십시오.

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