有谁知道为什么我的getIntent()方法未定义为android服务和onStartCommand()方法内部?
@Override
public int onStartCommand(Intent intent, int flags, int startId){
super.onStartCommand(intent, startId, startId);
Intent i = getIntent();
Bundle extras = i.getExtras();
filename = extras.getString("filename");
return START_STICKY;
}
答案 0 :(得分:3)
因为意图作为函数的参数传递...
onStartCommand(Intent intent, ...
Bundle extras = intent.getExtras();
答案 1 :(得分:2)
getIntent()
方法属于Activity not of Service。在Activity中,如果要获取当前的Intent,则可以调用getIntent()
方法来获取意图。在服务中,onStartCommand()
方法已经具有参数intent,因此您可以获取使用intent传递的额外数据。
您已从intent
方法获取onStartCommand()
个对象。检查一下。
答案 2 :(得分:2)
getIntent
类中没有Service
()方法。您可以使用传递给onStartCommand