我试图将结果从a返回IntentSerivce到mainactivity使用intent,但我无法让它工作.在IntentService收到该活动的意图没有问题,请问这件事,并得到一个JSONstring.现在唯一的问题是将此String发送回活动.
这是mainactivity中的方法:
public String RTConn(String query){
System.out.println("Querying Rotten Tomatoes.");
Intent rtIntent = new Intent(MainActivity.this, RTConnection.class);
rtIntent.putExtra("query", query);
bindService(rtIntent, RTConnection, Context.BIND_AUTO_CREATE);
startService(rtIntent);
String json = getIntent().getStringExtra("json");
return json;
Run Code Online (Sandbox Code Playgroud)
这是IntentService:
public void onStart(Intent intent, int startId){
System.out.println("intent Received");
String jsonString = rottenTomatoesSearch(intent.getStringExtra("query"));
Intent RTRetur = new Intent(RTConnection.this, MainActivity.class);
RTRetur.putExtra("json", jsonString);
startActivity(RTRetur);
}
Run Code Online (Sandbox Code Playgroud)
显然startActivity不起作用,但还有什么可以使用?(我宁愿不使用广播接收器).关心Peter L.
更新
这就是MainActivity的外观:
public static final String RECEIVE_JSON = "student.kau.RECEIVE_JSON";
private BroadcastReceiver RTReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context …Run Code Online (Sandbox Code Playgroud)