Я использую React-C-track-player в моем нативном приложении React для воспроизведения Audio.
Проблема: на Android , когда приложение запускается из закрытого состояния, компонент игрока кратко появляется для разделения второго до появления фактического экрана загрузки. Этого не происходит на iOS. < /P>
Я не хочу, чтобы игрок показывал вообще, пока пользователь не нажимает на воспроизведение.const PodcastPlayer = ({ podcast }) => {
const [playerReady, setPlayerReady] = useState(false);
useEffect(() => {
setupIfNeeded().then(() => {
TrackPlayer.add([{
id: podcast.id,
title: podcast.name,
artist: podcast.author || 'Unknown',
url: podcast.url,
duration: podcast.duration,
}]).then(() => setPlayerReady(true));
});
return () => {
TrackPlayer.reset();
};
}, [podcast.url]);
if (!playerReady) {
return (
Loading...
);
}
return (
{/* Player controls */}
);
};
What I have tried
Wrapping the player in a conditional render based on playerReady.
Calling TrackPlayer.setupPlayer() lazily.
Using TrackPlayer.reset() on unmount.
None of these fully prevent the brief flash on Android.
Подробнее здесь: https://stackoverflow.com/questions/797 ... app-launch