在intent .setData()中使用字符串

时间:2017-12-12 11:38:55

标签: android

嗨我有一个流媒体应用程序,流媒体网址本身已定义。

我希望应用程序从网页中选择流式网址到字符串(我已经这样做了)。

但问题是我无法将该字符串放入.setData(Uri.parse());

在第27行的代码中我有String。我想在第90行将{String>内容放入.setData

这是我的代码:https://ideone.com/mw8ARE

private void showSnack(boolean isConnected) {
    if(isConnected)
    {

       Intent mpdIntent = new Intent(this, PlayerActivity.class);
        mpdIntent.setData(Uri.parse(channel))
                .putExtra(PlayerActivity.CONTENT_ID_EXTRA, "sbcms")
                .putExtra(PlayerActivity.CONTENT_TYPE_EXTRA, Util.TYPE_HLS)
                .putExtra(PlayerActivity.PROVIDER_EXTRA, "");
      startActivityForResult(mpdIntent,PICK_CONTACT_REQUEST);

        //Intent in = new Intent(MainActivity.this,PlayerActivity.class);
       // startActivity(in);
    }
    else{
PlayOfflineContent();
    }

更新:

我正在从网站获取网址     字符串渠道=''

我的问题是我无法将该字符串channel = url放入mpdIntent

mpdIntent.setData(Uri.parse(channel))

这不起作用

2 个答案:

答案 0 :(得分:0)

你可以通过 - :

来做到
Intent i = new Intent(this, PlayerActivity.class);
i.putExtra("url","yourURL");
startActivity(i);

在代码中更改您的网址 - :

  Request request = new Request.Builder()
            .url("YourUrl")
            .build();

答案 1 :(得分:0)

根据您的代码链接,请检查您是否在onCreate()方法中执行DownloadWebPageTask,如下所示

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tvdata = (TextView) findViewById(R.id.tvdata);
        new DownloadWebPageTask().execute();//change here
        checkConnection();

    }