须要系统MacOS 10.15,Xcode11,OC代码和Swift代码项目都行。ios
MacOS 10.15以后,Xcode11 能够将iOS app秒变Mac app,对iOS开发者又将是一波潮流,MacOS的生态更加繁荣。Mac OS和iOS 系统仍是有许多不一样之处,有不一样的框架库,虽然苹果官方作了兼容处理,但大部分的第三方库,并还未作彻底兼容。可能存在问题大概就是调用了废弃方法,调用了iOS独有类未终端限制等。 iOS 设备上的强大的手势操做,能够经过Macbook的触摸板部分实现。git
用个小项目试了下,iOS能够运行for Mac。项目小只用了AFNetWorking 和Masonry、MJExtension、DGActivityIndicatorView 库,遇到问题和参照解决方法。github
最新的AFNetworking 3.2.1sql
- (instancetype)initWithMemoryCapacity:(NSUInteger)memoryCapacity diskCapacity:(NSUInteger)diskCapacity diskPath:(nullable NSString *)path API_DEPRECATED_WITH_REPLACEMENT("initWithMemoryCapacity:diskCapacity:directoryURL:", macos(10.2,API_TO_BE_DEPRECATED), ios(2.0,API_TO_BE_DEPRECATED), watchos(2.0,API_TO_BE_DEPRECATED), tvos(9.0,API_TO_BE_DEPRECATED)) API_UNAVAILABLE(uikitformac);
=> API_UNAVAILABLE(uikitformac);
复制代码
也许您应该使用新的API:macos
- (instancetype)initWithMemoryCapacity:(NSUInteger)memoryCapacity diskCapacity:(NSUInteger)diskCapacity directoryURL:(nullable NSURL *)directoryURL API_AVAILABLE(macos(10.15), ios(13.0), watchos(6.0), tvos(13.0));
复制代码
问题已提交到github,但AFNetworking还未更新,能够手动修改unlock保存。运行,如有pod install 须要再修改过了。bash
MacOS上并不在使用UIWebView ,所以UIWebView + AFNetworking不能编译经过, 若是您未使用UIWebView+AFNetworking,您能够临时删除这个类和相关引用。app
WCDB 库是一个不错的sqlite管理库。可是在forMac编译时,能够将以下定义框架
#if defined(__APPLE__) && ((__MAC_OS_X_VERSION_MIN_REQUIRED > 1050) || \
(__IPHONE_OS_VERSION_MIN_REQUIRED > 2000))
# if (!defined(TARGET_OS_EMBEDDED) || (TARGET_OS_EMBEDDED==0)) \
&& (!defined(TARGET_IPHONE_SIMULATOR) || (TARGET_IPHONE_SIMULATOR==0))
# define HAVE_GETHOSTUUID 1
# else
# warning "gethostuuid() is disabled."
# endif
#endif
复制代码
修改成ui
#if defined(__APPLE__) && ((__MAC_OS_X_VERSION_MIN_REQUIRED > 1050) || \
(__IPHONE_OS_VERSION_MIN_REQUIRED > 2000))
# if (!defined(TARGET_OS_EMBEDDED) || (TARGET_OS_EMBEDDED==0)) \
&& (!defined(TARGET_IPHONE_SIMULATOR) || (TARGET_IPHONE_SIMULATOR==0)) \
&& !defined(TARGET_OS_UIKITFORMAC)
# define HAVE_GETHOSTUUID 1
# else
# warning "gethostuuid() is disabled."
# endif
#endif
复制代码
添加 !defined(TARGET_OS_UIKITFORMAC)
的判断。spa
注意: 以上修改如有pod install 须要再次修改。