#opengl-es #google-play #android-manifest
#opengl-es #google-play #android-манифест
Вопрос:
Можно ли сделать приложение недоступным для устройств без определенного расширения OpenGL ES в Google Play Store?
Поскольку <supports-gl-texture>
принимает имя расширения, а не формат текстуры, можно ли его использовать для общих расширений GLES?
Ответ №1:
Да, я считаю, что есть, например:
<uses-feature android:glEsVersion="0x00020000" android:required="true" />
Это заявление не позволит устройствам, которые не поддерживают OpenGL es 2.0, видеть ваше приложение в playstore.
Попробуйте это:
String extensions = javax.microedition.khronos.opengles.GL10.glGetString(
GL10.GL_EXTENSIONS);
Согласно документам, extensions
переменная будет содержать разделенный пробелом список поддерживаемых расширений для GL. Так что я думаю, вы можете просто использовать .contains("GL_OES_depth24");
или что-то в этом роде. Вам нужно будет проверить некоторые примеры содержимого возвращаемых файлов, чтобы узнать, как это проверить.
Я не знаю, как запретить приложению появляться в Google Play Store, но вы можете просто поставить этот флажок в начале своего приложения, который сообщит пользователям, что вы не можете использовать это приложение или что-то в этом роде.
Комментарии:
1. Спасибо за ответ, но это не то, что мне нужно. В моей игре много z-файтингов с 16-битными буферами глубины (Tegra 2/3), и на текущем этапе разработки уровней исправить это было бы безумно сложно. Итак, я хочу скрыть игру от устройств без
GL_OES_depth24
расширения.2. @SiPlus Пожалуйста, посмотрите мое редактирование: я не знаю, поможет ли это, но, надеюсь, поможет.
3. Да, я знаю, но я действительно не хочу добавлять это в код средства визуализации движка, потому что движок поддерживает 16-битный буфер глубины, с ними игровые уровни выглядят уродливо. А объем игры составляет 500 МБ, поэтому сообщение об ошибке во время выполнения не подходит.
4. @SiPlus Я буду честен с тобой. Извините, это выходит за рамки моих знаний.
5. Можете ли вы разделить загрузку? Таким образом, пользователям нужно только загрузить начальные 10 МБ или что-то в этом роде и запустить. Затем вы выполняете проверку во время выполнения и разрешаете им загружать всю игру целиком, только если они ее поддерживают.