Java 创建活动以打开YouTube并自动搜索

Java 创建活动以打开YouTube并自动搜索,java,android,Java,Android,所以我不知道如何把它放在标题中,但我一直在尝试打开我的应用程序,比如说YouTube,然后自动进入搜索(前面给出)。这是我的代码,它更容易解释 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Get the URL and search from the intent Intent intent = getIntent(); Stri

所以我不知道如何把它放在标题中,但我一直在尝试打开我的应用程序,比如说YouTube,然后自动进入搜索(前面给出)。这是我的代码,它更容易解释

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Get the URL and search from the intent
    Intent intent = getIntent();
    String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);

    // Open browser and auto search in searchbar
    if (!message.startsWith("http://") && !message.startsWith("https://"))
    message = "http://" + message + ".com";
    Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(message));
    startActivity(browserIntent);
}
所以我想做的是打开YouTube(这很好),但是我想使用下一个放入搜索的单词(用空格分隔)在YouTube的搜索栏中键入

  • 输入内容:Youtube有趣视频

  • 将消息传递到第二个活动中:打开URL“Youtube”(目前为止效果良好)

  • 该活动识别“Youtube”(用空格分隔)之后的消息的其他部分,并将其放入Youtube的搜索栏中


  • 我该怎么做?

    据我所知,您要做的是从字符串中提取
    “youtube猫视频”
    部分
    “youtube”
    “猫视频”
    。以下代码执行以下操作:

    String message = "youtube cat videos";
    // Remove leading and trailing whitespaces.
    message = message.trim();  
    // Set limit to one so only the first  space is used to split.
    String[] parts = message.split(" ", 2);  
    // Check if domain and query are set.
    if (parts.length < 2) {
        // Invalid.
    }
    String domain = parts[0];  
    String query = parts[1];  
    // Check if we have a valid domain name.
    if (domain.matches("[a-zA-Z][a-zA-Z0-9]+")) {
        // Do stuff.
    }
    
    String message=“youtube猫视频”;
    //删除前导空格和尾随空格。
    message=message.trim();
    //将“限制”设置为1,以便仅使用第一个空间进行拆分。
    String[]parts=message.split(“,2);
    //检查是否设置了域和查询。
    如果(零件长度<2){
    //无效。
    }
    字符串域=部分[0];
    字符串查询=部件[1];
    //检查我们是否有有效的域名。
    if(域匹配(“[a-zA-Z][a-zA-Z0-9]+”){
    //做事。
    }
    

    不要忘记使用trim()和matches()函数过滤无效查询。

    Hmmm!我知道我可以用两种不同的意图。。。。因为YouTube有自己的搜索链接,我可以用它来打开我的搜索。但是,我想知道是否可以用空格将代码一分为二。如果我对这两个函数使用相同的意图,情况会是这样的。这就是我的URL的样子=@JadeByfieldI无法使您的代码正常工作。。。。它只会使我的应用程序崩溃,我应该在哪里添加我已经准备好编写的代码,我应该保留它的哪些部分@NutomicI实际上错误地调用了split()并错过了一个结束语,现在测试了它,它可以工作了。那么,我应该在do stuff部分添加哪部分代码呢?因为我不确定如何在这段代码中使用http代码@Nutomicy你可以做
    String url=“http://“+domain+”.com“+”/results?search_query=“+query.replace”(“,”+”)