twitter 推特下载安卓版中文 - 在其他应用程序的Android应用程序中打开页面-Android




twitter下载地址 推特手机 (5)

我正在寻找一些方法来启动Twitter应用程序,并从我的应用程序打开一个指定的页面,没有webview。 我在这里找到了Facebook的解决方案: 在指定的个人资料页面上打开Facebook应用

我需要类似的东西。

编辑我刚刚找到了解决方案:

try {
    Intent intent = new Intent(Intent.ACTION_VIEW,
    Uri.parse("twitter://user?screen_name=[user_name]"));
    startActivity(intent);
} catch (Exception e) {
    startActivity(new Intent(Intent.ACTION_VIEW,
    Uri.parse("https://twitter.com/#!/[user_name]"))); 
}

Answers

我的答案建立在fg.radigales和Harry广泛接受的答案之上。 如果用户已安装Twitter但已禁用(例如,通过使用App Quarantine),则此方法将不起作用。 Twitter应用程序的意图将被选中,但由于它被禁用,它将无法处理它。

代替:

getPackageManager().getPackageInfo("com.twitter.android", 0);
intent = new Intent(Intent.ACTION_VIEW, Uri.parse("twitter://user?user_id=2343965036"));

您可以使用以下内容来决定做什么:

PackageInfo info = getPackageManager().getPackageInfo("com.twitter.android", 0);
if(info.applicationInfo.enabled)
    intent = new Intent(Intent.ACTION_VIEW, Uri.parse("twitter://user?user_id=2343965036"));
else
    intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/wrkoutapp"));


只需尝试此代码段即可。 它会帮助你。

//Checking If the app is installed, according to the package name
        Intent intent = new Intent();
        intent.setType("text/plain");
        intent.setAction(Intent.ACTION_SEND);
        final PackageManager packageManager = getPackageManager();
        List<ResolveInfo> list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);

        for (ResolveInfo resolveInfo : list) 
        {
            String packageName = resolveInfo.activityInfo.packageName;

            //In case that the app is installed, lunch it.
            if (packageName != null && packageName.equals("com.twitter.android")) 
            {
                try
                {
                    String formattedTwitterAddress = "twitter://user/" ;
                    Intent browseTwitter = new Intent(Intent.ACTION_VIEW, Uri.parse(formattedTwitterAddress));
                                    long twitterId = <Here is the place for the twitter id>
                    browseTwitter.putExtra("user_id", twitterId);
                    startActivity(browseTwitter);

                    return;
                }
                catch (Exception e) 
                {

                }
            }
        }

        //If it gets here it means that the twitter app is not installed. Therefor, lunch the browser.
        try
        { 
                            String twitterName = <Put the twitter name here>
            String formattedTwitterAddress = "http://twitter.com/" + twitterName;
            Intent browseTwitter = new Intent(Intent.ACTION_VIEW, Uri.parse(formattedTwitterAddress)); 
            startActivity(browseTwitter);
        }
        catch (Exception e) 
        {

        }

使用Android在其他应用程序中打开Twitter应用程序页面,分2步:

1.只需粘贴以下代码(点击按钮或任何你需要的地方)

Intent intent = null;
try{
   // Get Twitter app
   this.getPackageManager().getPackageInfo("com.twitter.android", 0);
   intent = new Intent(Intent.ACTION_VIEW, Uri.parse("twitter://user?user_id=USER_ID"));
   intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
} catch () {
   // If no Twitter app found, open on browser
   intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/USERNAME"));
}

2. intent = new Intent(Intent.ACTION_VIEW, Uri.parse("twitter://user?user_id=USER_ID"));

要获得USER_ID,只需写入用户名http://gettwitterid.com/并获取Twitter用户ID

参考https://solutionspirit.com/open-page-twitter-application-android/https://solutionspirit.com/open-page-twitter-application-android/

希望它会帮助:)


对于那些升级到Android Studio v1.0的用户,看到错误的Gradle DSL方法找不到:'runProguard',如果你使用Gradle插件的0.14.0或更高版本,你应该将“runProguard”替换为“minifyEnabled “在你的build.gradle文件中。 即

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
}




android twitter