当前位置: 首页 > 知识库问答 >
问题:

使用AWS CloudFront和Android

祖迪
2023-03-14

对于我工作的项目,我需要从AWS S3在Android上消费视频。

Im使用带有签名URL的专用文件访问。一切正常,但视频流的初始化时间相当长(可能6-10秒)。

Im无法生成正确的url,因此文件是从CloudFront而不是S3中使用的。

我似乎找不到任何关于CloudFront+Android的文档,也找不到任何gradle依赖关系。

我找到的在线资源指向依赖CloudFrontUrlSigner类的Java图(它仅包含在Java SDK中,而不是Android SDK中)

共有1个答案

冯泓
2023-03-14

如果你打算在Android上通过CloudFront访问私人内容,这会有点棘手。您需要使用私钥对URL进行签名。请参见http://docs.aws.amazon.com/amazoncloudfront/latest/developerguide/private-content-trusted-signers.html。然而,这通常被认为是一个风险在移动平台上,因为您需要部署密钥到您的应用程序。这是AWS Android SDK无法使用CloudFrontUrlSigner的主要原因。我建议创建您自己的后端,它可以提供一个CloudFront url并发送到您的应用程序。下面是对URL进行签名的代码https://github.com/aws/aws-sdk-java/blob/master/aws-java-sdk-cloudfront/src/main/java/com/amazonaws/services/cloudfronturlsigner.java。

 类似资料:
  • 我正在学习Spring Boot,并试图实现身份验证。我有一个注册页面,它使用POST方法发送新用户数据以存储在内存数据库中。奇怪的是,当我提交表单时,GET方法是唯一被调用的方法。这是我的超文本标记语言文件: 如您所见,表单上有< code>method="POST"属性。 这是我的注册控制器: 我已经将放在@GetMap()方法中,即使我点击注册表单上的提交按钮,也可以在我的服务器上看到该方法

  • 我用Firebird direct wifi connect在android上创建了一个应用程序。有时我会得到这样的错误: 致命例外:AsyncTask#4Thread.java:1019:在java.lang.NullPointerExceptionorg.firebirdsql.gds.impl.wire.AbstractJavaGDSImpl.iscDatabaseInfo(Abstract

  • 问题内容: 我想在其他线程不再引用它时正确关闭Closeable对象。 我写了一些小测试,但是将对象加入队列后,get方法返回null,即poll方法返回没有引用的正确Object。 提前致谢。任何帮助将不胜感激。 问题答案: 首先,如果仅是关闭,请使用。接下来,从参考队列中,不保证您将获得参考。并且您将永远不会找回实际的对象(参考对象)。 如果要确保已关闭,则必须自己跟踪它们。然后,当您使用参考

  • 问题内容: 我目前正在研究Mockito框架,并且已经使用Mockito创建了一些测试用例。但后来我读到的不是调用模拟( SomeClass的 的.class)我可以使用和-我需要做的唯一一件事情就是我的注释测试类或使用的方法。 但这不起作用-似乎不会起作用!这是我的2个代码修订-一个使用注释,另一个不使用注释。 我究竟做错了什么? 正如我所说-这项工作很棒。但是以下内容不会: 这是课程: 我想念

  • 问题内容: 我对Python相对较新(我使用MATLAB的次数更多)。我本质上希望能够制作和保存动画。因此,我去检查了它的工作方式,发现了这一点:http : //jakevdp.github.io/blog/2012/08/18/matplotlib- animation-tutorial/ 我直接将代码复制/粘贴到IPython Notebook中。 我了解必须安装ffmpeg,我认为我已经安

  • 我已经在运行El Capitan的Mac上安装了Python 2.7和3.5。此外,我在python中使用了Symphy包(与pip一起安装)。我想用Pypy(用自制软件安装)运行我的代码,但Pypy似乎找不到Sympy,并说: “没有名为sympy的模块” 我根本不是专家,现在不知道该怎么办。Sympy可以很好地与Python2和3配合使用,但不能与Pypy配合使用。 我感谢你的每一个回答,提前