你如何得到一个行为不同的行为(调用不同的方法),取决于它从何处启动?Android活动绑定到服务并根据活动的开始位置调用不同的命令。
我有一个活动,当用户选择一首歌或用户按下'正在播放'按钮时启动。
理想情况下,如果从活动a中选择了一首歌曲,则活动b绑定到该服务,并通知该服务播放所选歌曲。
如果从活动a中选择'正在播放'按钮,则活动b绑定到服务,但不会告诉它开始播放歌曲。
我已经知道,这是可以通过意向,广播或只是一堆if语句实现的,但我不确定如何最好地实现这一点。谢谢你的帮助。
你如何得到一个行为不同的行为(调用不同的方法),取决于它从何处启动?Android活动绑定到服务并根据活动的开始位置调用不同的命令。
我有一个活动,当用户选择一首歌或用户按下'正在播放'按钮时启动。
理想情况下,如果从活动a中选择了一首歌曲,则活动b绑定到该服务,并通知该服务播放所选歌曲。
如果从活动a中选择'正在播放'按钮,则活动b绑定到服务,但不会告诉它开始播放歌曲。
我已经知道,这是可以通过意向,广播或只是一堆if语句实现的,但我不确定如何最好地实现这一点。谢谢你的帮助。
您可以添加一个标志(或任何其他额外的细节),以表明您是否想要的歌曲开始或不是在故意发送到活动B.
所以在活动答:
Intent startBIntent = new Intent(this, ActivityB.class);
Bundle extraDetails = new Bundle();
extraDetails.putBoolean("isPlaySong", true);
startBIntent.putExtras(extraDetails);
startActivity(startBIntent);
然后在Activity B的onCreate()中,检索详细信息:
Boolean isPlaySong = getIntent().getExtras().getBoolean("isPlaySong");
可以作为额外添加启动组件的名称(或其他特定的字符串,它是唯一的),以意图,在你的活动开始Activity.Then得到它的意图(使用getIntent())和检索它的extras.Then使用开关 - 决定要做什么。