Android 背景音乐是一个独立的背景过程吗?
这是一个关于进程与线程的澄清问题。我知道每个应用程序都将作为自己的独立进程运行,这意味着它有自己的linux进程id,进程由线程和并发运行的代码组成。假设我启动愤怒的小鸟,我知道该应用程序本身有一个进程id。背景音乐是它自己的独立进程(由另一个播放音乐的应用程序启动)还是原始进程中的一个独立线程?我想它只是一个媒体(MediaPlayer)在同一个应用程序中播放,可能在单独的线程中,但不一定。我认为这只是一个媒体(MediaPlayer)在同一个应用程序中播放,可能在单独的线程中,但不一定。我认为这只是一个媒体(MediaPlayer)在同一个应用程序中播放,可能在单独的线程中,但不一定。我认为这只是一个媒体(MediaPlayer)在同一个应用程序中播放,可能在单独的线程中,但不一定。背景音乐使用单独的线程。看看这个例子 公共课专业扩展活动{Android 背景音乐是一个独立的背景过程吗?,android,linux,multithreading,process,Android,Linux,Multithreading,Process,这是一个关于进程与线程的澄清问题。我知道每个应用程序都将作为自己的独立进程运行,这意味着它有自己的linux进程id,进程由线程和并发运行的代码组成。假设我启动愤怒的小鸟,我知道该应用程序本身有一个进程id。背景音乐是它自己的独立进程(由另一个播放音乐的应用程序启动)还是原始进程中的一个独立线程?我想它只是一个媒体(MediaPlayer)在同一个应用程序中播放,可能在单独的线程中,但不一定。我认为这只是一个媒体(MediaPlayer)在同一个应用程序中播放,可能在单独的线程中,但不一定。我认
MediaPlayer ourSong;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.pro);
ourSong = MediaPlayer.create(Pro.this, R.raw.sou);
// music started
ourSong.start();
Thread time = new Thread(){
public void run(){
try{
sleep(2000);
} catch(InterruptedException e){
e.printStackTrace();
}finally{
Intent openMainActivity = new Intent("com.example.disd.Menu");
startActivity(openMainActivity);
}
}
};
time.start();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
ourSong.release();
finish();
}
}
请参阅链接背景音乐使用单独的线程。看看这个例子 公共课专业扩展活动{
MediaPlayer ourSong;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.pro);
ourSong = MediaPlayer.create(Pro.this, R.raw.sou);
// music started
ourSong.start();
Thread time = new Thread(){
public void run(){
try{
sleep(2000);
} catch(InterruptedException e){
e.printStackTrace();
}finally{
Intent openMainActivity = new Intent("com.example.disd.Menu");
startActivity(openMainActivity);
}
}
};
time.start();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
ourSong.release();
finish();
}
}
请参阅链接背景音乐使用单独的线程。看看这个例子 公共课专业扩展活动{
MediaPlayer ourSong;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.pro);
ourSong = MediaPlayer.create(Pro.this, R.raw.sou);
// music started
ourSong.start();
Thread time = new Thread(){
public void run(){
try{
sleep(2000);
} catch(InterruptedException e){
e.printStackTrace();
}finally{
Intent openMainActivity = new Intent("com.example.disd.Menu");
startActivity(openMainActivity);
}
}
};
time.start();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
ourSong.release();
finish();
}
}
请参阅链接背景音乐使用单独的线程。看看这个例子 公共课专业扩展活动{
MediaPlayer ourSong;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.pro);
ourSong = MediaPlayer.create(Pro.this, R.raw.sou);
// music started
ourSong.start();
Thread time = new Thread(){
public void run(){
try{
sleep(2000);
} catch(InterruptedException e){
e.printStackTrace();
}finally{
Intent openMainActivity = new Intent("com.example.disd.Menu");
startActivity(openMainActivity);
}
}
};
time.start();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
ourSong.release();
finish();
}
}
请参考链接我不知道你为什么问这个问题,不可能给出明确的答案。任何应用程序开发人员都可以创建一个
服务
,该服务在一个单独的进程中运行,以播放背景音乐(如果他们选择这样做的话)。这似乎是不必要的,因为标准的安卓MediaPlayer
处理自己的线程,这意味着它可以在应用程序进程中的活动
或服务
中安全使用。很难区分所有定义。媒体播放器是否是一个单独的进程(是另一个应用程序?)请阅读-一个应用程序由一个线程上运行的单个进程组成。如果您创建一个MediaPlayer
实例,它将在同一个线程上运行,但它也会创建自己的工作线程来处理音乐播放。我不确定您为什么要问这个问题,也不可能给出明确的答案。任何应用程序开发人员都可以创建一个服务
,该服务在一个单独的进程中运行,以播放背景音乐(如果他们选择这样做的话)。这似乎是不必要的,因为标准的安卓MediaPlayer
处理自己的线程,这意味着它可以在应用程序进程中的活动
或服务
中安全使用。很难区分所有定义。媒体播放器是否是一个单独的进程(是另一个应用程序?)请阅读-一个应用程序由一个线程上运行的单个进程组成。如果您创建一个MediaPlayer
实例,它将在同一个线程上运行,但它也会创建自己的工作线程来处理音乐播放。我不确定您为什么要问这个问题,也不可能给出明确的答案。任何应用程序开发人员都可以创建一个服务
,该服务在一个单独的进程中运行,以播放背景音乐(如果他们选择这样做的话)。这似乎是不必要的,因为标准的安卓MediaPlayer
处理自己的线程,这意味着它可以在应用程序进程中的活动
或服务
中安全使用。很难区分所有定义。媒体播放器是否是一个单独的进程(是另一个应用程序?)请阅读-一个应用程序由一个线程上运行的单个进程组成。如果您创建一个MediaPlayer
实例,它将在同一个线程上运行,但它也会创建自己的工作线程来处理音乐播放。我不确定您为什么要问这个问题,也不可能给出明确的答案。任何应用程序开发人员都可以创建一个服务
,该服务在一个单独的进程中运行,以播放背景音乐(如果他们选择这样做的话)。这似乎是不必要的,因为标准的安卓MediaPlayer
处理自己的线程,这意味着它可以在应用程序进程中的活动
或服务
中安全使用。很难区分所有定义。媒体播放器是否是一个单独的进程(是另一个应用程序?)请阅读-一个应用程序由一个线程上运行的单个进程组成。如果创建MediaPlayer
的实例,它将在同一线程上运行,但它也会创建自己的工作线程来处理音乐播放。但是如果它是媒体播放器,它不需要运行自己的linux进程,因为它是一个独立的应用程序吗?我认为它本身不需要是一个独立的linux进程,因为MediaPlayer类只提供访问媒体文件、解码、播放和控制它们所需的实现。你不这么认为吗?但如果它是一个媒体播放器,它不需要运行自己的linux进程,因为它是一个独立的应用程序吗?我认为它本身不需要是一个独立的linux进程,因为MediaPlayer类只提供访问媒体文件、解码、播放和控制它们所需的实现。你不这么认为吗?但如果它是一个媒体播放器,它不需要运行自己的linux进程,因为它是一个独立的应用程序吗?我认为它本身不需要是一个独立的linux进程,因为MediaPlayer类只提供访问媒体文件、解码、播放和控制它们所需的实现。你不这么认为吗?但如果它是一个媒体播放器,它不需要运行自己的linux进程,因为它是一个独立的应用程序吗?我不认为它需要是一个独立的lin