Ios MediaPlayer使用DropBox URL播放视频

Ios 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

嗨,我正在为一个uni项目创建一个应用程序,该项目要求我从服务器播放视频。 我决定使用Dropbox。但是它不会播放文件,有没有办法让我这样做?或者我需要从其他地方获取视频

我尝试了另一个链接,效果非常好。(但不是dropbox)

我的代码如下

AnimeWatchViewController.m

//
//  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流,因此文件大小确实很重要-请使用短片段进行尝试。最后,如果怀疑是您的代码导致的,请使用浏览器测试播放。非常感谢!有没有办法提高控制力。像暂停等,在我的模拟中似乎不会发生。非常感谢!有没有办法提高控制力。像暂停等,在我的模拟中似乎没有发生