{"id":21658684,"url":"https://github.com/kyo504/react-native-audio-streaming-player","last_synced_at":"2025-07-17T21:31:31.201Z","repository":{"id":46938702,"uuid":"121732894","full_name":"kyo504/react-native-audio-streaming-player","owner":"kyo504","description":"An audio steaming player for React Native","archived":false,"fork":false,"pushed_at":"2021-09-21T02:06:21.000Z","size":712,"stargazers_count":42,"open_issues_count":31,"forks_count":20,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-08-11T11:17:28.993Z","etag":null,"topics":["android","audio-player","ios","react-native","streaming-audio"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kyo504.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-02-16T09:20:21.000Z","updated_at":"2024-01-27T12:48:47.000Z","dependencies_parsed_at":"2022-09-26T21:40:13.436Z","dependency_job_id":null,"html_url":"https://github.com/kyo504/react-native-audio-streaming-player","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyo504%2Freact-native-audio-streaming-player","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyo504%2Freact-native-audio-streaming-player/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyo504%2Freact-native-audio-streaming-player/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kyo504%2Freact-native-audio-streaming-player/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kyo504","download_url":"https://codeload.github.com/kyo504/react-native-audio-streaming-player/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226304919,"owners_count":17603717,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","audio-player","ios","react-native","streaming-audio"],"created_at":"2024-11-25T09:29:40.135Z","updated_at":"2024-11-25T09:29:56.341Z","avatar_url":"https://github.com/kyo504.png","language":"Java","funding_links":[],"categories":["Java"],"sub_categories":[],"readme":"# react-native-streaming-audio-player [![npm version](https://badge.fury.io/js/react-native-streaming-audio-player.svg)](https://badge.fury.io/js/react-native-streaming-audio-player)\n\nStreaming audio player for iOS + Android\n\n# Features\n\n- Play remote streaming audio source\n- Handle audio focus for...\n  - incoming and outgoing calls\n  - switching application contexts\n- Control audio from notification and lock screen (**Android**)\n- Control audio from control center and lock screen (**iOS**)\n- Control audio from headsets\n\n\n# Installation\nFirst, install the library from npm:\n\n```\nnpm install react-native-streaming-audio-player --save\n```\n\nSecond, link the native dependencies.\n\n```\nreact-native link react-native-streaming-audio-player\n```\n\n# Running a sample app\nIn the Example directory:\n```\ncd Examples\nnpm install\nreact-native run-ios or run-android\n```\n\n# Usage\n```javascript\nimport Player from 'react-native-streaming-audio-player';\n\nexport default class Example extends Component {\n  constructor(props) {\n    super(props);\n    this.state = { currentTime: 0 }\n    this.onUpdatePosition = this.onUpdatePosition.bind(this);\n  }\n\n  onPlay() {\n    Player.play(source.url, {\n      title: source,\n      artist: source.artist,\n      album_art_uri: source.arworkUrl,\n    });\n  }\n\n  onPause() {\n    Player.pause();\n  }\n\n  render() {\n    return (\n      \u003cView style={styles.container}\u003e\n        \u003cView style={{ flexDirection: 'row', alignSelf: 'stretch', justifyContent: 'space-around' }}\u003e\n          \u003cButton\n            title='Play'\n            onPress={() =\u003e this.onPlay()}\n            color='red'\n          /\u003e\n          \u003cButton\n            title='Pause'\n            onPress={() =\u003e this.onPause()}\n            color='red'\n          /\u003e\n        \u003c/View\u003e\n      \u003c/View\u003e\n    );\n  }\n}\n\nconst styles = StyleSheet.create({\n  container: {\n    flex: 1,\n    justifyContent: 'center',\n    alignItems: 'center',\n  },\n});\n```\n\n# API and Configuration\nPlayer Control\n- play(url: string, metadata: object)\n  - metadata.title\n  - metadata.artist\n  - metadata.album_art_uri\n- pause()\n- stop()\n\nCallbacks\n- onPlaybackStateChanged\n- onUpdatePosition\n\nPlaybackState\n- NONE\n- PLAYING\n- BUFFERING\n- PAUSED\n- STOPPED\n- COMPLETED\n\nPlayerAction\n- Play\n- Pause\n- SkipToNext\n- SkipToPrevious\n\n# Roadmap\n- [ ] Unit tests\n- [ ] Clean up\n\n# Contribute\n\n# License\nThis project is licensed under the MIT License - see the LICENSE file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyo504%2Freact-native-audio-streaming-player","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkyo504%2Freact-native-audio-streaming-player","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkyo504%2Freact-native-audio-streaming-player/lists"}