对于网络搜索,onActivityResult数据为空

时间:2016-03-10 03:36:07

标签: android onactivityresult

我执行网络搜索后,我的数据由于某种原因返回null。我想要做的是,如果我走在正确的轨道上,我不是百分百肯定,就是从网络搜索中获取所有可能的链接。因此,如果用户键入“Java”,我的onActivityResult应该能够找到与serach“Java”相关联的所有链接,但是现在我的数据为空。

这就是我所拥有的:

public void onSearchClick(View v) {

    try {
        Intent intent = new Intent(Intent.ACTION_WEB_SEARCH);
        String term = editTextInput.getText().toString();
        intent.putExtra(SearchManager.QUERY, term);
        startActivityForResult(intent, REQ_CODE_SEARCH);
    } catch (Exception e) {
        Toast.makeText(getApplicationContext(), "FAILED TO CONNECT", Toast.LENGTH_SHORT);
    }
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    switch (requestCode) {
        case REQ_CODE_SEARCH: {

            if (resultCode == RESULT_OK && data != null) {
                ArrayList<String> urls = data
                        .getStringArrayListExtra(SearchManager.QUERY);

                for(int i = 0; i < urls.size(); i++){
                    System.out.println("************** " + urls.get(i));
                }
            }
            else if(data == null){//goes here
                System.out.println("null***********");
            }
            break;
        }

    }

如果有帮助,这就是我在运行程序时所做的事情:

  • 输入编辑文本的内容

  • 按下按钮,搜索编辑文本的内容

  • 一旦我到达谷歌搜索结果,我按下后退按钮,导致我回到第一个屏幕

  • 然后显示结果,在这种情况下为NULL

0 个答案:

没有答案