Android, как открыть приложение как снаружи, так и внутри устройства Gear vr

Я разработал приложение для Android для воспроизведения 360-градусных видео на устройстве Gear VR. Я использовал приведенный ниже код внутри манифеста для предотвращения автоматического запуска приложения Gear VR. (Ранее, когда я подключал телефон к устройству Gear VR, Gear VR приложение запускается вместо моего приложения. И я не могу войти в свое приложение)

<meta-data
    android:name="com.samsung.android.vr.application.mode"
    android:value="vr_only"/>

Но когда я использовал этот код, я не могу открыть приложение вне устройства Gear VR. Это означает, что когда я нажимаю значок приложения, появляется заставка и появляется всплывающее окно. "Чтобы открыть это приложение, вставьте устройство в Gear VR. ". Итак, я изменил манифест как: -

<meta-data
    android:name="com.samsung.android.vr.application.mode"
    android:value="vr_dual"/>

Теперь проблема в том, что приложение Gear VR снова запускается по умолчанию, когда я подключаюсь к устройству Gear VR. Как с этим справиться? Может ли кто-нибудь помочь мне найти решение....


person max    schedule 07.04.2017    source источник
comment
вы нашли способ решить эту проблему? Где вы нашли другие режимы приложений (например, vr_dual)?   -  person fogx    schedule 22.08.2017


Ответы (1)


Вместо этого попробуйте "двойной"

<meta-data
android:name="com.samsung.android.vr.application.mode"
android:value="dual"/>

Кстати, вы можете найти значение в исходном коде VrActivity.java

public static boolean isHybridApp( final Activity act ) {
    try {
        ApplicationInfo appInfo = act.getPackageManager().getApplicationInfo(act.getPackageName(), PackageManager.GET_META_DATA);
        Bundle bundle = appInfo.metaData;
        String applicationMode = bundle.getString("com.samsung.android.vr.application.mode");
        return (applicationMode.equals("dual"));
    } catch( NameNotFoundException e ) {
        e.printStackTrace();
    } catch( NullPointerException e ) {
        Log.e(TAG, "Failed to load meta-data, NullPointer: " + e.getMessage());         
    } 

    return false;
}
person Ji Fang    schedule 20.12.2017