【问题标题】:when to use service for MediaPlayerin android studio何时使用 MediaPlayerin android studio 的服务
【发布时间】:2019-03-06 04:55:37
【问题描述】:

在我的应用程序中,我从服务器下载了音频然后播放,但是由于锁定我的手机而停止了 MediaPlayer,所以我添加了一个后台服务进行播放。在那之后,我改变了主意,我希望用户不能访问我的音频,所以我加密了音频并解密了播放。通过这种方式,我不需要后台服务。 我完全糊涂了。我不需要这项服务,因为节省了内部费用!!!!!! 你能解释一下吗? 提前致谢

【问题讨论】:

  • 我的意思是内部存储 byandroid.content.Context.getDir(String name, Context.MODE_PRIVATE):
  • 并且在我的应用程序中,用户也可以录制他们的声音,并将它们保存在本地数据库中(我的意思是 android.os.Environment.getExternalStoragePublicDirectory() 的外部存储)。音频不需要后台服务即可再次运行。

标签: android encryption android-mediaplayer background-service


【解决方案1】:

这取决于您正在开发的应用程序类型。如果这是一个音乐播放器,即使应用程序关闭,用户也应该能够收听,然后使用服务。音频只是文件,如果它们被加密,只需在播放前解密它们。 另一方面,如果您的应用程序是某种音频编辑器,用户应该在播放音频时主动使用应用程序,那么您可能不会使用服务。

【讨论】:

  • 感谢您的回答,但我没有得到,我的应用程序有不同的行为,当我从服务器下载音频文件并保存到外部存储时,我需要服务,但是当我录制音频并保存时在外部存储上我不需要服务,为什么?对于他们两个,我只是从外部读取而没有加密和解密。
  • 当您从服务器下载文件时,您需要使用IntentService,因为您在后台执行工作。大多数人选择使用第三方库(例如 Retrofit 或 Fetch)来实现它。
  • 我使用 volley 库并将下载代码放在扩展 AsyncTask 的类中,并在 onPostExecute 中播放音频。我需要服务才能在外部存储上播放该音频。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-11-22
  • 1970-01-01
  • 2020-02-27
  • 2017-12-28
  • 1970-01-01
  • 2018-06-13
  • 2014-10-09
相关资源
最近更新 更多