通过URL打开vimeo应用程序

时间:2016-03-04 04:49:01

标签: android eclipse url

此代码将我带到浏览器,我有vimeo应用程序,它如何进入vimeo应用程序?

vimeo1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://player.vimeo.com/video/83178705?"));
                startActivity(browserIntent);
            }
        });

EDITED

vimeo1.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {
                try{
                     Intent browserIntent = new Intent(Intent.ACTION_VIEW,
                     Uri.parse("http://player.vimeo.com/video/83178705"));
                     browserIntent.setPackage("com.vimeo.android.videoapp");
                     startActivity(browserIntent);
                  }
                catch(Exception e){
                    // App is not Installed
                    //Navigate to Play Store or display message                         
                }

            }
        });

3 个答案:

答案 0 :(得分:1)

使用官方Vimeo应用程序,您可以执行此操作:

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://player.vimeo.com/video/83178705")));

虽然这看起来几乎与您的代码相同,但除了缺少?之外,在我的Android手机上它运行正常(打开Vimeo应用)。

答案 1 :(得分:1)

我们实际上最近创建了一个vimeo-deeplink-android库,可以帮助您实现您正在寻找的目标。

你可以用gradle包含它:

compile 'com.vimeo.android.deeplink:vimeo-deeplink:1.0.0'

然后使用this method

深度链接到您的视频

boolean handled = VimeoDeeplink.showVideoWithUri(Context context, String videoUri)

videoUri等于/videos/83178705

答案 2 :(得分:0)

尝试此操作,在重定向时设置包名称。

如果没有安装与该软件包相关的应用程序,则会调用

catch块。

try{
     Intent browserIntent = new Intent(Intent.ACTION_VIEW,
     Uri.parse("http://player.vimeo.com/video/83178705"));
     browserIntent.setPackage("com.vimeo.android.videoapp");
     startActivity(browserIntent);
  }
catch(Exception e){
    // App is not Installed
    //Navigate to Play Store or display message                         
}

修改

我已经检查了这个,你是对的,它没有用。我改成了我的代码。现在它的开放申请但视频没有运行,我不知道为什么。 检查此更新的代码。

try{
   Intent browserIntent = null;
   PackageManager pmi = getPackageManager();
   browserIntent =     pmi.getLaunchIntentForPackage("com.vimeo.android.videoapp");
   browserIntent.setAction(Intent.ACTION_VIEW);
   browserIntent.setData(Uri.parse("http://player.vimeo.com/video/83178705"));

   startActivity(browserIntent);
}
catch(Exception e){
   // App is not Installed
   //Navigate to Play Store or display message
   Toast.makeText(MainActivity.this, "In Catch Block", Toast.LENGTH_SHORT).show();
}