我正在将应用程序从iOS迁移到OSX,在OSX中是否有类似于UIActivityViewController的东西.对于像Facebook,Twitter,邮件,消息共享这样的东西,我需要做类似的事情;
NSArray *activityItems = [NSArray arrayWithObjects:shareString, shareImage, shareUrl, nil];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:activityItems applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypeAssignToContact, UIActivityTypeSaveToCameraRoll];
activityViewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:activityViewController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
如何在OSX中实现这一目标?
我在应用内收到错误
" Assertion failure in -[AVPlayerPeriodicCaller initWithPlayer:interval:queue:block:], /SourceCache/EmbeddedAVFoundation/EmbeddedAVFoundation-461.12/Fig/AVPlayer.m:3993
Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid parameter not satisfying: CMTIME_COMPARE_INLINE(interval, >, kCMTimeZero)'
Run Code Online (Sandbox Code Playgroud)
任何想法为什么会发生这种情况?
我仅限于使用AvPlayer,因为我需要流式传输大文件。AVaudioplayer无法选择。因此,我还实现了一个洗涤器滑块。我对AVplayer的实现如下:
-(void)playAudioForFile:(NSString *)fileName{
[self.suraPlayer removeTimeObserver:playbackObserver];
[self.suraPlayer removeTimeObserver:mTimeObserver];
self.suraPlayer = nil;
NSURL* url = [self getURLStringForFileName:fileName];
AVPlayer *player = [[AVPlayer alloc]initWithURL:url];
self.suraPlayer = player;
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemDidReachEnd:)
name:AVPlayerItemDidPlayToEndTimeNotification
object:[suraPlayer currentItem]];
[self.suraPlayer play];
[self.suraPlayer addObserver:self forKeyPath:@"status" options:0 context:nil];
[self initScrubberTimer];
[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(updateProgress) userInfo:nil repeats:YES];
//[self metadataForAsset:self.suraPlayer.currentItem.asset];
Run Code Online (Sandbox Code Playgroud)
}
-(void)updateProgress {
// NSLog(@"self.mScrubber.value %f", self.mScrubber.value);
Run Code Online (Sandbox Code Playgroud)
//这是调试器有时绊脚石的路线
float …Run Code Online (Sandbox Code Playgroud) 我有一个有效的Google地图网址,如果您在浏览器中运行,则会显示地图图片.但是,当我把它放在我的Swift代码中并尝试从String创建NSURL时,它返回nil
let urlString = "https://maps.googleapis.com/maps/api/staticmap?maptype=hybrid¢er=37.33233141,-122.0312186&path=color:0xff0000|weight:10|37.33233141,-122.0312186|21.422570,%2039.826190&markers=color:blue%7Clabel:S%7C37.33233141,-122.0312186&markers=color:blue%7Clabel:S%7C21.422570,39.826190&zoom=1&size=1080x1920"
let url = NSURL(string: urlString)
Run Code Online (Sandbox Code Playgroud)
目前,这个回报为零,我不知道为什么.难道我做错了什么?
我想看一些关于如何使用NSJSONSerialization类在URL中获取和POST数据的具体示例/教程.
我知道如何实际获取数据,这是POST在某种程度上令人困惑.任何有用的指针将非常感谢..