我正在切换MPMoviePlayerController到AVPlayer我需要对视频交换进行更细粒度的控制..mov我正在播放的文件MPMoviePlayerController播放得很好,但在切换到AVPlayer我听到视频中的音频后,视频只显示我添加AVPlayerLayer到的视图背景.这是我如何初始化AVPlayer.
self.player = [[AVPlayer alloc] initWithURL:video];
AVPlayerLayer* playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
playerLayer.frame = self.playerContainer.bounds;
[self.playerContainer.layer addSublayer:playerLayer];
Run Code Online (Sandbox Code Playgroud)
后来我发了一个.
[self.player play];
Run Code Online (Sandbox Code Playgroud)
播放视频时,我会听到音频,但看不到视频.我也尝试将zPosition设置为没有运气.
playerLayer.zPosition = 1;
Run Code Online (Sandbox Code Playgroud) 我们今天有一些代码接受NSArray并将其作为参数列表传递给 - [NSString initWithFormat:arguments],我们试图让它与ARC一起工作.这是代码使用的
NSString* format = @"Item %s and Item %s"; // Retrieved elsewhere
NSArray* args = [NSArray arrayWithObjects:@"1", @"2", nil]; // Retrieved elsewhere
// http://cocoawithlove.com/2009/05/variable-argument-lists-in-cocoa.html
char* argsList = (char*) malloc(sizeof(NSString*) * args.count);
[args getObjects:(id*) argsList];
NSString* message = [[[NSString alloc] initWithFormat:format arguments:argsList] autorelease];
free(argsList);
Run Code Online (Sandbox Code Playgroud)
有关如何使ARC符合要求的任何建议?或者我们甚至愿意接受更好的方式.
我们正在尝试创建一个单元测试(使用OCMock,虽然对其他框架开放),这样可以模拟一个在类加载时产生副作用的类.
我们有一个跟踪类,可以调用其他跟踪库,如Flurry.
许多其他跟踪库(特别是Flurry)在类初始化时执行代码.
单元测试失败,因为代码无法在单元测试环境中执行.理想情况下,我们想用mock/stub替换Flurry类.
- (void) testConstruction {
[Flurry class];
}
Run Code Online (Sandbox Code Playgroud)
当调用此代码时,它会尝试使用SCNetworkReachability和接收exceptions...
我们如何存根/模拟对具有如下静态实现的Flurry的调用?
[Flurry setAppVersion:@"1.0"];
[Flurry setCrashReportingEnabled:NO];
Run Code Online (Sandbox Code Playgroud) 在 Xcode 14.3.1(及更早版本)中,我有多个目标(调试、开发、测试版和生产)。当我为单个目标构建时,我会在每个目标的问题导航器中看到错误。有人遇到过这个问题并有解决方案来消除这些重复的问题吗?我注释掉了一个导入以演示错误的重复。我正在为调试目标构建,但它在所有目标上都显示问题。此外,这种情况发生在多台计算机上,因此不是派生数据问题(尽管我已经清除了这一点)。
此外,如果我关闭并重新打开 Xcode,它最初打开时仅显示一个问题,直到它重新索引,然后再次显示重复项。
ios ×2
objective-c ×2
avplayer ×1
flurry ×1
iphone ×1
ocmock ×1
unit-testing ×1
xcode ×1
xcode14.3 ×1
xctest ×1