Поделитесь опытом работы с воспроизведением Аудио на Андройде!
ВоспроизвестиАудио(<Аудио>, <НачальнаяПозиция>, <ОбработчикОстановкиВоспроизведения>, <РазрешитьФоновое>)
1) Не как не могу понять как ставить на паузу воспроизводимый файл!
2) Пока воспроизвдение видео нету в платформе, как его можно открыть сторонней программой!
P.S. разработчики очень странно прорабатывают платформу! Для меня так, это все уже должны были сделать по умолчанию!!! А то танцы с бубном постоянно!
ВоспроизвестиАудио(<Аудио>, <НачальнаяПозиция>, <ОбработчикОстановкиВоспроизведения>, <РазрешитьФоновое>)
1) Не как не могу понять как ставить на паузу воспроизводимый файл!
2) Пока воспроизвдение видео нету в платформе, как его можно открыть сторонней программой!
P.S. разработчики очень странно прорабатывают платформу! Для меня так, это все уже должны были сделать по умолчанию!!! А то танцы с бубном постоянно!
По теме из базы знаний
- Разработка мобильных приложений в системе «1С:Предприятие 8.3» (в формате видеокурса или онлайн-курса).
- Пакет обновление Simple UI Август 2021. Новый формат и новые возможности.
- Базовый курс по разработке мобильных 1C-приложений для Android-устройств.
- Astra Linux Special Edition
- Операционная система Альт
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) если вы используете метод ВоспроизвестиАудио, то пока ставить на паузу нельзя, может, может когда нибудь допилят.
Видео можно воспроизвести через метод и послать туда двоичные данные видео, после чего откроется стандартное приложение для воспроизведения видео.
Видео можно воспроизвести через метод
ЗапуститьПриложение()
Для воспроизведения музыки и других аудиоматериалов Android предоставляет класс MediaPlayer.
Чтобы воспроизводить аудио, MediaPlayer должен знать, какой именно ресурс (файл) нужно производить. Установить нужный ресурс для воспроизведения можно тремя способами:
в метод create() объекта MediaPlayer передается id ресурса, представляющего аудиофайл
в метод create() объекта MediaPlayer передается объект Uri, представляющего аудиофайл
в метод setDataSource() объекта MediaPlayer передается полный путь к аудиофайлу
После установки ресурса вызывается метод prepare() или prepareAsync() (асинхронный вариант prepare()). Этот метод подготавливает аудиофайл к воспроизведению, извлекая из него первые секунды. Если мы воспроизводим файл из сети, то лучше использовать prepareAsync().
Для управления воспроизведением в классе MediaPlayer определены следующие методы:
start(): запускает аудио
pause(): приостанавливает воспроизведение
stop(): полностью останавливает воспроизведение
Чтобы воспроизводить аудио, MediaPlayer должен знать, какой именно ресурс (файл) нужно производить. Установить нужный ресурс для воспроизведения можно тремя способами:
в метод create() объекта MediaPlayer передается id ресурса, представляющего аудиофайл
в метод create() объекта MediaPlayer передается объект Uri, представляющего аудиофайл
в метод setDataSource() объекта MediaPlayer передается полный путь к аудиофайлу
После установки ресурса вызывается метод prepare() или prepareAsync() (асинхронный вариант prepare()). Этот метод подготавливает аудиофайл к воспроизведению, извлекая из него первые секунды. Если мы воспроизводим файл из сети, то лучше использовать prepareAsync().
Для управления воспроизведением в классе MediaPlayer определены следующие методы:
start(): запускает аудио
pause(): приостанавливает воспроизведение
stop(): полностью останавливает воспроизведение
(3)
[code] package com.example.eugene.mediaapp;
import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
MediaPlayer mPlayer;
Button startButton, pauseButton, stopButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPlayer=MediaPlayer.create(this, R.raw.music);
mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
stopPlay();
}
});
startButton = (Button) findViewById(R.id.start);
pauseButton = (Button) findViewById(R.id.pause);
stopButton = (Button) findViewById(R.id.stop);
pauseButton.setEnabled(false);
stopButton.setEnabled(false);
}
private void stopPlay(){
mPlayer.stop();
pauseButton.setEnabled(false);
stopButton.setEnabled(false);
try {
mPlayer.prepare();
mPlayer.seekTo(0);
startButton.setEnabled(true);
}
catch (Throwable t) {
Toast.makeText(this, t.getMessage(), Toast.LENGTH_SHORT).show();
}
}
public void play(View view){
mPlayer.start();
startButton.setEnabled(false);
pauseButton.setEnabled(true);
stopButton.setEnabled(true);
}
public void pause(View view){
mPlayer.pause();
startButton.setEnabled(true);
pauseButton.setEnabled(false);
stopButton.setEnabled(true);
}
public void stop(View view){
stopPlay();
}
@Override
public void onDestroy() {
super.onDestroy();
if (mPlayer.isPlaying()) {
stopPlay();
}
}
}
[code/]
[code] package com.example.eugene.mediaapp;
import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
MediaPlayer mPlayer;
Button startButton, pauseButton, stopButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPlayer=MediaPlayer.create(this, R.raw.music);
mPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
stopPlay();
}
});
startButton = (Button) findViewById(R.id.start);
pauseButton = (Button) findViewById(R.id.pause);
stopButton = (Button) findViewById(R.id.stop);
pauseButton.setEnabled(false);
stopButton.setEnabled(false);
}
private void stopPlay(){
mPlayer.stop();
pauseButton.setEnabled(false);
stopButton.setEnabled(false);
try {
mPlayer.prepare();
mPlayer.seekTo(0);
startButton.setEnabled(true);
}
catch (Throwable t) {
Toast.makeText(this, t.getMessage(), Toast.LENGTH_SHORT).show();
}
}
public void play(View view){
mPlayer.start();
startButton.setEnabled(false);
pauseButton.setEnabled(true);
stopButton.setEnabled(true);
}
public void pause(View view){
mPlayer.pause();
startButton.setEnabled(true);
pauseButton.setEnabled(false);
stopButton.setEnabled(true);
}
public void stop(View view){
stopPlay();
}
@Override
public void onDestroy() {
super.onDestroy();
if (mPlayer.isPlaying()) {
stopPlay();
}
}
}
[code/]
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот