我正在尝试在2个应用程序之间传递一个字符串但我收到字符串时遇到了麻烦。到目前为止,如果接收应用程序未打开,我已经开始工作,但如果以前没有打开则不行。
这似乎是OnRestart()函数,我正在尝试处理传入的字符串。与OnCreate()不同,我用于启动处理传入的字符串,它返回SEND作为其意图。在下面的代码中,虽然OnRestart()按照意图返回MAIN。
@Override
protected void onRestart()
{
super.onRestart();
Log.v("VM","ONRESTART");
// Get intent, action and MIME type
Intent intent = getIntent();
Log.v("VM","INTENT: " + getIntent());
String action = intent.getAction();
Log.v("VM","ACTION: " + action);
String type = intent.getType();
Log.v("VM","TYPE: " + type);
if (Intent.ACTION_SEND.equals(action) && type != null)
{
Log.v("VM","ACTION INTENT");
if ("text/plain".equals(type))
{
Log.v("VM","HANDLE TEXT");
handleSendText(intent); // Handle text being sent
}
}
}
有没有办法获得正确的意图,还是我需要用广播接收器或其他方式做另外的方式?
答案 0 :(得分:0)
你可以覆盖那个
的onNewIntent方法@Override
protected void onNewIntent(Intent intent) {
// TODO Auto-generated method stub
if (intent.getAction() == Intent.ACTION_SEND) {
//your code will be go here
}
}
你可以在这里获得更多信息