Сохранение звука уведомления в каталог уведомлений не работает на Samsung S9 - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть звуки уведомлений, добавленные в исходный текст приложения, и я могу успешно сохранить их в каталоге уведомлений приложения c, используя

   private void savefile()
    {
        Uri uri = Uri.parse("android.resource://" + getActivity().getApplicationContext().getPackageName() + "/" + R.raw.notification);
        String sourceFilename= uri.getPath();
        File path = getActivity().getApplicationContext().getExternalFilesDir(Environment.DIRECTORY_NOTIFICATIONS);
        String destinationFilename = path.getPath()+File.separatorChar+"Testnotification.mp3";
        SweLog.d(TAG, "sourceFileName: " + sourceFilename + " destFileName: " + destinationFilename);

        BufferedInputStream bis = null;
        BufferedOutputStream bos = null;

        try {
            bis = new BufferedInputStream(getResources().openRawResource(R.raw.unlocked));
            bos = new BufferedOutputStream(new FileOutputStream(destinationFilename, false));
            byte[] buf = new byte[1024];
            bis.read(buf);
            do {
                bos.write(buf);
            } while(bis.read(buf) != -1);
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                if (bis != null) bis.close();
                if (bos != null) bos.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

Если я просматриваю телефон, я вижу, что mp3 файл был успешно добавлен в Android/data/<package-name>/files/Notifications/Testnotification.mp3. Однако наличие файла, похоже, не позволяет ему появиться в списке уведомлений для приложения. Если я go в настройках приложения, выберите один из каналов уведомлений и откройте список доступных звуков, тогда добавленный звук не отобразится в списке. Однако, если я копирую и вставляю файл в «глобальный» каталог уведомлений /Notifications, я вижу его в списке доступных звуков. Разве для этого приложения не должно быть звукового уведомления в каталоге приложения c Notifications? Если нет, могу ли я сохранить его прямо в «глобальном» каталоге уведомлений?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...