Ios MediaPlayer使用DropBox URL播放视频
嗨,我正在为一个uni项目创建一个应用程序,该项目要求我从服务器播放视频。 我决定使用Dropbox。但是它不会播放文件,有没有办法让我这样做?或者我需要从其他地方获取视频 我尝试了另一个链接,效果非常好。(但不是dropbox) 我的代码如下 AnimeWatchViewController.mIos MediaPlayer使用DropBox URL播放视频,ios,objective-c,video,mpmovieplayercontroller,dropbox,Ios,Objective C,Video,Mpmovieplayercontroller,Dropbox,嗨,我正在为一个uni项目创建一个应用程序,该项目要求我从服务器播放视频。 我决定使用Dropbox。但是它不会播放文件,有没有办法让我这样做?或者我需要从其他地方获取视频 我尝试了另一个链接,效果非常好。(但不是dropbox) 我的代码如下 AnimeWatchViewController.m // // AnimeWatchViewController.m // VideoPlayer // // Created by Alex Lee on 27/04/2014. // Cop
//
// AnimeWatchViewController.m
// VideoPlayer
//
// Created by Alex Lee on 27/04/2014.
// Copyright (c) 2014 Alex Lee. All rights reserved.
//
#import "AnimeWatchViewController.h"
@interface AnimeWatchViewController ()
@end
@implementation AnimeWatchViewController
@synthesize moviePlayer;
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
}
-(IBAction)playMovie{
NSURL * url =[[NSURL alloc] initWithString:@"https://www.dropbox.com/s/t05zdw2woogo4kh/ACW_3.mp4"];
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
[moviePlayer.view setFrame:CGRectMake(20, 100, 275, 150)];
[self.view addSubview:moviePlayer.view];
moviePlayer.fullscreen = YES;
moviePlayer.allowsAirPlay = YES;
moviePlayer.shouldAutoplay = YES;
moviePlayer.controlStyle = MPMovieControlModeDefault;
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
AnimeWatchViewController.h
//
// AnimeWatchViewController.h
// VideoPlayer
//
// Created by Alex Lee on 27/04/2014.
// Copyright (c) 2014 Alex Lee. All rights reserved.
//
#import <UIKit/UIKit.h>
#import <MediaPlayer/MediaPlayer.h>
@interface AnimeWatchViewController : UIViewController
@property(nonatomic,strong) MPMoviePlayerController * moviePlayer;
-(IBAction)playMovie;
@end
//
//AnimeWatchViewController.h
//视频播放器
//
//由Alex Lee于2014年4月27日创建。
//版权所有(c)2014 Alex Lee。版权所有。
//
#进口
#进口
@接口AnimeWatchViewController:UIViewController
@属性(非原子,强)MPMoviePlayerController*moviePlayer;
-(i)播放电影;
@结束
您正在使用URL,但它不是指向视频的链接。。。这是一个链接,指向一个有视频的页面
要将其转换为视频的直接链接,请将www.dropbox.com
更改为dl.dropboxuser.com
,如下所示:您使用的是URL,但这不是视频的链接。。。这是一个链接,指向一个有视频的页面
要将其转换为视频的直接链接,请将
www.dropbox.com
更改为dl.dropboxuser.com
,如下所示:为此,您必须首先获得直接下载链接,然后可以直接从dropbox服务器播放视频
为此,您必须首先获得直接下载链接,然后才能直接从dropbox服务器播放视频
有几个选项可能是问题的根源。1.HTTP通信(可能是错误的MIME类型,可能是DropBox引入的一些奇怪的其他怪癖)——使用Charles这样的代理来检查并比较两种情况。2.编码不兼容-检查您的违规视频的确切编解码器和文件编码,并将结果与Apple的兼容列表进行比较。3.大小限制-您没有使用正确的HTTP流,因此文件大小确实很重要-请使用短片段进行尝试。最后,如果怀疑您的代码是否是原因,请使用浏览器测试播放。有几个选项可能是问题的根源。1.HTTP通信(可能是错误的MIME类型,可能是DropBox引入的一些奇怪的其他怪癖)——使用Charles这样的代理来检查并比较两种情况。2.编码不兼容-检查您的违规视频的确切编解码器和文件编码,并将结果与Apple的兼容列表进行比较。3.大小限制-您没有使用正确的HTTP流,因此文件大小确实很重要-请使用短片段进行尝试。最后,如果怀疑是您的代码导致的,请使用浏览器测试播放。非常感谢!有没有办法提高控制力。像暂停等,在我的模拟中似乎不会发生。非常感谢!有没有办法提高控制力。像暂停等,在我的模拟中似乎没有发生