我正在创建服务以在我的应用程序中播放声音。当应用程序以启动画面开始时,音频开始,然后主菜单活动开始主菜单活动有4个按钮。我没有停止我的服务点击任何按钮(你可以在我的代码中看到),但当我在我的设备上运行我的应用程序时,点击任何按钮服务停止,当我从下一个活动回来这个。声音再次开始。我想完成应用程序上次活动的服务声音。为什么服务停止
主菜单的代码活动 -
private Button hist, typ, ben, exit;
Intent i, objIntent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
addListenerOnButton();
}
public void addListenerOnButton()
{
hist = (Button) findViewById(R.id.hist);
hist.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
startActivity(new Intent(MainActivity.this, History.class));
finish();
}
});
typ = (Button) findViewById(R.id.typ);
typ.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
startActivity(new Intent(MainActivity.this, Types.class));
finish();
}
});
ben = (Button) findViewById(R.id.ben);
ben.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
startActivity(new Intent(MainActivity.this, Benefits.class));
finish();
}
});
exit = (Button) findViewById(R.id.exit);
exit.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
startActivity(new Intent(MainActivity.this, EndSplash.class));
finish();
}
});
}
@Override
protected void onPause() {
super.onPause();
objIntent = new Intent(MainActivity.this, PlayAudio.class);
stopService(objIntent);
}
@Override
public void onBackPressed() {
super.onBackPressed();
objIntent = new Intent(MainActivity.this, PlayAudio.class);
stopService(objIntent);
}
@Override
public void onResume()
{
super.onResume();
objIntent = new Intent(MainActivity.this, PlayAudio.class);
startService(objIntent);
}
}
闪屏活动 -
TimerTask task;
Intent objIntent, intent;
Handler handler;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.splash);
UtilClass.playing = true;
objIntent = new Intent(SplashScreen.this, PlayAudio.class);
startService(objIntent);
new Handler().postDelayed(csRunnable2, 5000);
}
Runnable csRunnable2 = new Runnable()
{
@Override
public void run()
{
intent = new Intent(SplashScreen.this, MainActivity.class);
startActivity(intent);
finish();
}
};
public void onBackPressed()
{
// myHandler.removeCallbacks(myRunnable);
objIntent = new Intent(this, PlayAudio.class);
stopService(objIntent);
finish();
return;
}
@Override
protected void onPause() {
super.onPause();
objIntent = new Intent(this, PlayAudio.class);
stopService(objIntent);
}
}
我在启动屏幕上启动服务,并在开始此活动时完成(),我不认为完成对此有任何影响。等待我更新我的问题。 –
onPause方法呢? –
查看更新的问题。 –