Я начал разрабатывать приложение для Android, и я очень новичок в этом.Мое приложение должно прочитать некоторый QR-код, и в данный момент я использую библиотеку zxing.Теперь у меня возникла проблема с частью приложения, которая включает воспроизведение звуков, хранящихся в / res / raw:
мой код иногда запускается .. но в большинстве случаев он не
Я могу получить доступ к некоторым звуковым файлам в необработанной папке с помощью этого кода:
var myPlayer = MediaPlayer.create(this, R.raw.filename)
, но не вызывая нужный мне файл через переменную:
var myVarWithFilenameInside: String = "filename"
var myFileInt: Int = resources.getIdentifier("$myVarWithFilenameInside", "raw", this.getPackageName())
var myPlayer = MediaPlayer.create(this, myFileInt)
(даже если, очевидно, в "random"msgstr "это иногда срабатывает; на самом деле это довольно странно ..)
Я уже пытался не указывать тип переменной, а также вставлять packageName (как предложено в IDE) вместо this.getPackageName ()... Однако, похоже, ничего не работает
PS.Кроме того, эта инструкция работает отлично, но опять же я должен получить идентификатор без использования переменной, но положить его внутри метода вручную
var myFileInt: Int = resources.getIdentifier("filename", "raw", this.getPackageName())
var myPlayer = MediaPlayer.create(this, myFileInt)
Я очень застрял с этим ... Так что любая помощьбудет оценено Спасибо заранее