【问题标题】:How to share video in Twitter using Twitter kit 3 in the android?如何在 android 中使用 Twitter kit 3 在 Twitter 中分享视频?
【发布时间】:2018-03-21 11:01:52
【问题描述】:

去除织物后,现在在android中使用Twitter kit 3

案例:

  • 我需要在不打开Twitter Composer的情况下分享文字、图片和视频

  • 我正在通过StatusesService的方法使用twitter kit 3分享文本、图像和视频

  • 所以我可以使用以下代码分享文本:

    final TwitterSession session = TwitterCore.getInstance().getSessionManager().getActiveSession();
    StatusesService statusesService = TwitterCore.getInstance().getApiClient(session).getStatusesService();
    statusesService.update("Click this link "+getShareLink(),null,null,null,null,null,null,null,null).enqueue(new Callback<Tweet>() {
        @Override
        public void success(Result<Tweet> result) {
            Toast.makeText(context,"Tweet success ",Toast.LENGTH_SHORT).show();
            Log.e(TAG,"Twitter "+ result.data.toString());
        }
    
        @Override
        public void failure(TwitterException exception) {
            Toast.makeText(context,"Tweet failure ",Toast.LENGTH_SHORT).show();
            Log.e(TAG,"Twitter "+ exception.getMessage());
        }
    });
    
  • 图片上传我们可以使用MediaService,上传图片我们可以使用MediaService.upload()方法,但是在MediaService他们只是提示图片上传和我还检查了他们的文档。

  • 现在如何使用StatuesServices 或任何其他方法在 Twitter 工具包 3 中分享视频?

【问题讨论】:

    标签: android twitter twitter-share


    【解决方案1】:

    1) 原生视频上传支持仅适用于iOS(见附件部分)

    2) 快速解决方法您可以将视频转换为 gif 并上传。

    3) 正确的解决方案

    您可以extend 套件,并使用the media/uploads endpoint

    查看此内容以发出post 请求。

    【讨论】:

    • 是的,它是正确的,我已经通过 twitter4j 完成了它,但不幸的是它不能通过扩展它在 twitter sdk 中工作,因为 INIT 和 APPEND 有效,在 FINALIZE 步骤之前检查状态时,它会抛出错误 @Optional
    • 错误是什么。你能分享你的 json 负载和响应吗?
    • 公平地说,没有。但我已经看到它在不使用 Composer Api 的情况下被扩展和实现。
    • 是的@optional,但它有问题
    • 要走的路。干杯@KoVartthan
    【解决方案2】:

    它正在使用 tweet-composer:3.3.0。

    我只是将视频 Uri 添加到我们通常添加图像 Uri 的位置。 效果出乎意料。

    private void shareVideoViaTwitter(File file) {
        try {
            Uri uri = FileProvider.getUriForFile(context, "com.civ.petcam.fileprovider", file);
    
            context.startActivity(new TweetComposer.Builder(context)
                    .text("This video is made with PetCamera")
                    .url(new URL("https://play.google.com/store/apps/details?id=com.civ.petcam"))
                    .image(uri).createIntent().setFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
    
            onVideoShareCompleteListener.onVideoShareComplete("twitter");
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2015-12-30
      • 2013-02-05
      • 1970-01-01
      • 2017-12-23
      • 2019-03-08
      • 2015-08-17
      • 1970-01-01
      • 1970-01-01
      • 2021-02-07
      相关资源
      最近更新 更多