Android - 为视频创建后台服务
Posted
技术标签:
【中文标题】Android - 为视频创建后台服务【英文标题】:Android - Create a background service for a video 【发布时间】:2014-02-10 10:38:19 【问题描述】:我有一个创建服务的活动,该服务负责播放视频并允许收听视频的音频,即使应用程序处于后台也是如此。问题是,如何在服务中播放音频并允许应用程序在显示活动时显示活动内的视频?我的意思是,当应用程序在前台时我需要显示视频,当它在后台时我只需要音频,但无需停止并重新启动视频。
我希望我说清楚了......
谢谢
塞巴斯蒂亚诺
【问题讨论】:
【参考方案1】:启用服务:
try
Intent intent1 = new Intent(thisActivity, AlarmReciever.class);
Apps.sender = PendingIntent.getBroadcast(thisActivity, 2, intent1,
0);
Apps.am = (AlarmManager) getSystemService(ALARM_SERVICE);
long l = new Date().getTime();
if (l < new Date().getTime())
l += 100;
Apps.am.setRepeating(AlarmManager.RTC_WAKEUP, l, 100, sender);
catch (Exception e)
Toast.makeText(getApplicationContext(), e.toString(),
Toast.LENGTH_SHORT).show();
添加类AlarmReciver:
public class AlarmReciever extends BroadcastReceiver
@Override
public void onReceive(Context context, Intent intent)
Play.check();
// Toast.makeText(context, "Alarm Triggered", Toast.LENGTH_LONG).show();
添加活动播放并在其中创建方法check()
@SuppressWarnings("deprecation")
public static void check()
ActivityManager am1 = (ActivityManager) thisActivity
.getSystemService(Activity.ACTIVITY_SERVICE);
String packageName = am1.getRunningTasks(1).get(0).topActivity
.getPackageName();
if(packageName == "your app package name")
else
//if video play; show it
//else play audio
最后添加 mainfest 权限:
<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />
【讨论】:
以上是关于Android - 为视频创建后台服务的主要内容,如果未能解决你的问题,请参考以下文章