Приложение Android с библиотекой GO вызывает ошибки OpenGLAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Приложение Android с библиотекой GO вызывает ошибки OpenGL

Сообщение Anonymous »

Я работаю над приложением Android, разработанным в Котлине, которая объединяет стороннюю библиотеку, написанную в Go. Эта библиотека была составлена в виде файла AAR и интегрирована через Build.gradle.kles.kts .
Библиотека GO обнажает класс с именем mygoclass , содержащий различные методы. Однако всякий раз, когда я вызываю любой метод в mygoclass , мой logcat показывает сообщения об ошибках, аналогичные этим:

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

11:12:44.543 GoLog E s_glBindAttribLocation: bind attrib 0 name inPosition
11:12:44.543 GoLog E s_glBindAttribLocation: bind attrib 1 name inColor
11:12:44.543 GoLog E s_glBindAttribLocation: bind attrib 2 name inCircleEdge
< /code>
Эти ошибки возникают в тестах на эмуляторе (Android Studio, Emulator Pixel 7) При определенных обстоятельствах: < /p>
Примеры сценарии
сценарий 1: Ошибка во время начального рендеринга и первого щелчка
При рисовании кнопки и щелкнув ее на первый раз, следующий код репрет: < /p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> p> pr> < /p> p> p> p> p> p> pr> < /p> p> p> pr> < /p> p> pr> < /p> p> pronce wrring it Щекаclass MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
GoImportLibraryTheme {
Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
MyGoClass.test()
Button(
onClick = {
Toast.makeText(applicationContext, "Hello, this is a Toast!",
Toast.LENGTH_SHORT).show()
},
modifier = Modifier.padding(innerPadding)
) {}
}
}
}
}
}
Сценарий 2: Ошибка только при первом щелчке после перемещения метода вызова внутри Onclick Hellocker
Если я перенесен на вывод mygoclass.test () внутри onclick Слушание событий, тогда ошибка появляется только на начальной кнопке. Нажмите:

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

class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContent {
GoImportLibraryTheme {
Scaffold(modifier = Modifier.fillMaxSize()) { innerPadding ->
Button(
onClick = {
MyGoClass.test()
Toast.makeText(applicationContext, "Hello, this is a Toast!",
Toast.LENGTH_SHORT).show()
},
modifier = Modifier.padding(innerPadding)
) {}
}
}
}
}
}
Примечание: эти примеры используют mygoclass просто в качестве заполнителя. Я пробовал несколько библиотек, и они демонстрируют одно и то же поведение. Все библиотеки были скомпилированы с использованием gomobile -target = android .
Что может вызвать эти ошибки, связанные с OpenGL, и какие шаги я могу предпринять для их разрешения?
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/797 ... ngl-errors
Ответить

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

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

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

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

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