iOS 13適配總結(jié)

crash

1.使用PHCachingImageManager獲取iCloud圖片會crash

PHImageManager替換PHCachingImageManager可解決

2. iOS 13 通過 KVC 方式修改私有屬性腰根,有 Crash 風(fēng)險(xiǎn)恰起,謹(jǐn)慎使用!

UITextField 的私有屬性 _placeholderLabel 被禁止訪問了

[self.textField setValue:self.placeholderColor forKeyPath:@"_placeholderLabel.textColor"];

居然崩潰了限府,錯誤信息如下

'Access to UITextField's _placeholderLabel ivar is prohibited. This is an application bug' 

解決方案:

UITextField有個attributedPlaceholder的屬性本昏,我們可以自定義這個富文本來達(dá)到我們需要的結(jié)果。

NSMutableAttributedString *placeholderString = [[NSMutableAttributedString alloc] initWithString:placeholder attributes:@{NSForegroundColorAttributeName : self.placeholderColor}];
_textField.attributedPlaceholder = placeholderString;

KVC獲取狀態(tài)欄(_statusBar)會導(dǎo)致崩潰

KVC獲取searchbar的_searchField會崩潰
解決方案

extension UISearchBar {
public func getSearchTextField() -> UITextField{
if #available(iOS 13.0, *) {
return self.searchTextField
}else {
return value(forKey: "_searchField") as! UITextField
}
}
}

3.UILabel.text賦值的時(shí)候, 如果是null會crash

增加nsNull校驗(yàn)

4. IOS13更改了[self presentViewController: animated: completion:] 更改了 不是全屏并且下滑動會崩潰

解決方案

self.modalPresentationStyle = UIModalPresentationFullScreen; //設(shè)置模式為全屏 如果滑動還有崩潰 設(shè)置animated為NO

其他一

  • iOS使用UIApplication.sharedApplication.statusBarStyle獲取不到當(dāng)前的statusBarStyle了
    暫時(shí)通過[[nav topViewController] preferredStatusBarStyle];獲取 iOS13以后系統(tǒng)statusbar的管理統(tǒng)一使用UIStatusBarManager, 但是UIStatusBarManager獲取又需要UIWindowScene, 對整個app框架改動較大.

控制器的 modalPresentationStyle 默認(rèn)值變了

查閱了下 UIModalPresentationStyle枚舉定義枪汪,赫然發(fā)現(xiàn)iOS 13新加了一個枚舉值:
typedef NS_ENUM(NSInteger, UIModalPresentationStyle) {
    UIModalPresentationFullScreen = 0,
    UIModalPresentationPageSheet API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(tvos),
    UIModalPresentationFormSheet API_AVAILABLE(ios(3.2)) API_UNAVAILABLE(tvos),
    UIModalPresentationCurrentContext API_AVAILABLE(ios(3.2)),
    UIModalPresentationCustom API_AVAILABLE(ios(7.0)),
    UIModalPresentationOverFullScreen API_AVAILABLE(ios(8.0)),
    UIModalPresentationOverCurrentContext API_AVAILABLE(ios(8.0)),
    UIModalPresentationPopover API_AVAILABLE(ios(8.0)) API_UNAVAILABLE(tvos),
    UIModalPresentationBlurOverFullScreen API_AVAILABLE(tvos(11.0)) API_UNAVAILABLE(ios) API_UNAVAILABLE(watchos),
    UIModalPresentationNone API_AVAILABLE(ios(7.0)) = -1,
    UIModalPresentationAutomatic API_AVAILABLE(ios(13.0)) = -2,
};

解決方案

如果你完全接受蘋果的這個默認(rèn)效果涌穆,那就不需要去修改任何代碼。
如果雀久,你原來就比較細(xì)心宿稀,已經(jīng)設(shè)置了modalPresentationStyle的值,那你也不會有這個影響赖捌。
對于想要找回原來默認(rèn)交互的同學(xué)祝沸,直接設(shè)置如下即可:

self.modalPresentationStyle = UIModalPresentationOverFullScreen;

MPMoviePlayerController 在iOS 13已經(jīng)不能用了

'MPMoviePlayerController is no longer available. Use AVPlayerViewController in AVKit.' 

解決方案:

既然不能再用了,那只能換掉了越庇。替代方案就是AVKit里面的那套播放器罩锐。

UITextField設(shè)置leftView 會出現(xiàn)圖片無法按照意圖顯示的問題。

iOS13系統(tǒng)上需要自定義控件卤唉,或者不要使用leftView涩惑。

iOS 13 DeviceToken有變化

NSString *dt = [deviceToken description];
dt = [dt stringByReplacingOccurrencesOfString: @"<" withString: @""];
dt = [dt stringByReplacingOccurrencesOfString: @">" withString: @""];
dt = [dt stringByReplacingOccurrencesOfString: @" " withString: @""];
這段代碼運(yùn)行在 iOS 13 上已經(jīng)無法獲取到準(zhǔn)確的DeviceToken字符串了,iOS 13 通過[deviceToken description]獲取到的內(nèi)容已經(jīng)變了桑驱。

解決方案

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
    if (![deviceToken isKindOfClass:[NSData class]]) return;
    const unsigned *tokenBytes = [deviceToken bytes];
    NSString *hexToken = [NSString stringWithFormat:@"%08x%08x%08x%08x%08x%08x%08x%08x",
                          ntohl(tokenBytes[0]), ntohl(tokenBytes[1]), ntohl(tokenBytes[2]),
                          ntohl(tokenBytes[3]), ntohl(tokenBytes[4]), ntohl(tokenBytes[5]),
                          ntohl(tokenBytes[6]), ntohl(tokenBytes[7])];
    NSLog(@"deviceToken:%@",hexToken);
}

Sign in with Apple -提供第三方登錄的注意啦

如果你的應(yīng)用使用了第三方登錄竭恬,那么你可能也需要加下 「Sign in with Apple」
Sign In with Apple will be available for beta testing this summer. It will be required as an option for users in apps that support third-party sign-in when it is commercially available later this year.

解決方案
附上官方Demo:點(diǎn)我下載

即將廢棄的 LaunchImage

從 iOS 8 的時(shí)候,蘋果就引入了 LaunchScreen熬的,我們可以設(shè)置 LaunchScreen來作為啟動頁痊硕。當(dāng)然,現(xiàn)在你還可以使用LaunchImage來設(shè)置啟動圖押框。不過使用LaunchImage的話岔绸,要求我們必須提供各種屏幕尺寸的啟動圖,來適配各種設(shè)備,隨著蘋果設(shè)備尺寸越來越多亭螟,這種方式顯然不夠 Flexible挡鞍。而使用 LaunchScreen的話,情況會變的很簡單预烙, LaunchScreen是支持AutoLayout+SizeClass的墨微,所以適配各種屏幕都不在話下。
注意啦?扁掸,從2020年4月開始翘县,所有使? iOS13 SDK的 App將必須提供 LaunchScreen,LaunchImage即將退出歷史舞臺谴分。

IOS13 使用AOP切面編程會報(bào) TUICandidateView collectionView:didSelectItemAtIndexPath: unrecognized selector sent to instance 0x2802a4c60
發(fā)現(xiàn)我的項(xiàng)目中根本就沒有 TUICandidateView 這個View

解決方案

- (void)swiz_setDelegate:(id<UICollectionViewDelegate>)delegate {
    [self swiz_setDelegate:delegate];

    if([NSStringFromClass([delegate class]) isEqualToString:@"TUICandidateGrid"]){
        return;
    }

    if (delegate && [delegate respondsToSelector:@selector(collectionView:didSelectItemAtIndexPath:)]) {
        NSNumber *isHook = objc_getAssociatedObject(delegate, delegateCollectionViewIsHook);
        if (isHook == nil || ![isHook boolValue]) {
            @try {
                NSError *error = nil;
                [(NSObject *)delegate aspect_hookSelector:@selector(collectionView:didSelectItemAtIndexPath:) withOptions:AspectPositionBefore usingBlock:^(id<AspectInfo> aspectInfo) {

                    TZUserStatistics<AOPLoggerClickProtocol> *aopLoggerEngine=(TZUserStatistics<AOPLoggerClickProtocol>*)[TZStatisticInterceptionManager sharedStatLogger];
                    if ([aopLoggerEngine respondsToSelector:@selector(alcp_collectionView:didSelectItemAtIndexPath:from:)]) {
                        [aopLoggerEngine alcp_collectionView:aspectInfo.arguments[0] didSelectItemAtIndexPath:aspectInfo.arguments[1] from:aspectInfo.instance];
                    }

                } error:&error];
                objc_setAssociatedObject(delegate, delegateCollectionViewIsHook, @(YES), OBJC_ASSOCIATION_RETAIN);
            }
            @catch (NSException *exception) {
            }

        }
    }
}

判斷代理當(dāng)前的類是不是 TUICandidateGrid這個是系統(tǒng)的

目前暫時(shí)沒發(fā)現(xiàn)好的解決方案
    if([NSStringFromClass([delegate class]) isEqualToString:@"TUICandidateGrid"]){
        return;
    }

IOS13使用暗黑模式锈麸,UIView,UITableview牺蹄,UITextfile 默認(rèn)背景色會變成暗黑色

解決方案: info.plist 加入

<key>UIUserInterfaceStyle</key>
    <string>UIUserInterfaceStyleLight</string>

注意點(diǎn):

  • xcode10 沒有這個屬性忘伞,如果是xcode10打包加入這個字段提交AppStore 會報(bào)錯
  • xcode11打包可以加上這個字段

UIKit 提供新的系統(tǒng)顏色和 api 來適配不同顏色模式,xcassets 對素材適配也做了調(diào)整沙兰,官方具體適配可見: Implementing Dark Mode on iOS氓奈。

適配方案:

image

十 UISegmentedControl 默認(rèn)樣式改變

默認(rèn)樣式變?yōu)榘椎缀谧郑绻O(shè)置修改過顏色的話鼎天,頁面需要修改舀奶。

image

原本設(shè)置選中顏色的 tintColor 已經(jīng)失效,新增了 selectedSegmentTintColor 屬性用以修改選中的顏色斋射。

11.h5的適配育勺,參考鏈接:

https://blog.csdn.net/u012413955/article/details/92198556

12.使用MJExtension 中處理NSNull的不同

這個直接會導(dǎo)致Crash的在將服務(wù)端數(shù)據(jù)字典轉(zhuǎn)換為模型時(shí),如果遇到服務(wù)端給的數(shù)據(jù)為NSNull時(shí)罗岖。


UIKit
當(dāng)單元格突出顯示或選中時(shí)涧至,UITableViewCell 類不再更改 contentView 及其任何子視圖的 backgroundColor 或 opaque 屬性。如果要在 contentView 內(nèi)部(包括)內(nèi)容的任何子視圖上設(shè)置不透明的 backgroundColor桑包,則單元格突出顯示或選中時(shí)的外觀可能會受到影響化借。解決子視圖任何問題的最簡單方法是確保將 backgroundColor 設(shè)置為 nil 或 clearColor,并且設(shè)置它們的 opaque 屬性為 false捡多。但是蓖康,如果需要,您可以重寫 setHighlighted:animated: 和 setSelected:animated: 方法垒手,以便在移動到突出顯示的狀態(tài)和選定狀態(tài)時(shí)手動更改子視圖上的這些屬性蒜焊。

? 從iOS 8開始,將 UISearchController 與 UINavigationController 一起使用需要將頂視圖控制器的 definesPresentationContext屬性設(shè)置為 true科贬。如果不這樣做會導(dǎo)致難以檢測和調(diào)試的細(xì)微錯誤泳梆。從 iOS & iPadOS 13 beta 開始鳖悠,如果視圖控制器的 navigationItem 具有 non-nil 搜索控件,當(dāng)視圖控制器顯示在導(dǎo)航控制器中時(shí)优妙,UINavigationController 會自動將該視圖控制器的 definesPresentationContext 屬性設(shè)置為 true乘综。如果您要定位早期版本的 iOS,請?jiān)谒阉骺刂破髯優(yōu)榛顒訝顟B(tài)之前設(shè)置此屬性套硼。

? UIRefreshControl 類不再直接修改其滾動視圖的 contentInset卡辰。相反,它對內(nèi)容插入的調(diào)整將合并到滾動視圖的 adjustContentInset 中邪意。唯一的例外是當(dāng)滾動視圖的 contentInsetAdjustmentBehavior 設(shè)置為 UIScrollViewContentInsetAdjustmentNever 時(shí)九妈,在這種情況下,UIRefreshControl 實(shí)例將像以前的版本一樣直接修改 contentInset雾鬼。

? 如果通過覆蓋 sizeThatFits 在 UITableView 中實(shí)現(xiàn)自調(diào)整單元格而不使用自動布局萌朱,則返回的高度將被解釋為單元格的 contentView 所需的高度,UITableViewCell 會自動添加為單元格留出空間所需的任何其他高度 分隔器策菜。如果以這種方式實(shí)現(xiàn)手動自調(diào)整大小晶疼,則在 UITableViewCell 上調(diào)用 sizeThatFits: 時(shí),單元格的 contentView 寬度可以保證準(zhǔn)確又憨,以便在手動布局計(jì)算中使用翠霍。

? Trait環(huán)境(例如視圖和視圖控制器)現(xiàn)在在初始化期間使用 traits 填充 traitCollection 屬性。這些初始特征表示特征環(huán)境在添加到層次結(jié)構(gòu)時(shí)將接收的最終特征的預(yù)測竟块。因?yàn)樵诔跏蓟陂g填充的特征只是一個預(yù)測壶运,它們可能與實(shí)際在層次結(jié)構(gòu)中接收的特征不同耐齐。因此浪秘,在可能的情況下,您應(yīng)該等待執(zhí)行使用 traitCollection 的工作埠况,直到視圖或視圖控制器的視圖移動到層次結(jié)構(gòu)中 - 意味著窗口返回非零值 - 這樣您就不必丟棄任何工作耸携,如果實(shí)際特征不同,則使用預(yù)測的特征完成辕翰。使用 traitCollection 的最佳時(shí)間是在布局期間夺衍,例如 layoutSubviews,viewWillLayoutSubviews 或 viewDidLayoutSubviews 內(nèi)部喜命。

? 只有當(dāng)特征值發(fā)生變化時(shí)沟沙,才會調(diào)用 traitCollectionDidChange: 方法。重要的是壁榕,由于特征集合現(xiàn)在初始化為目標(biāo)層次結(jié)構(gòu)中最終特征的預(yù)測矛紫,當(dāng)初始預(yù)測特征與層次結(jié)構(gòu)中的最終特征匹配時(shí),特征環(huán)境添加到層次結(jié)構(gòu)時(shí)將不會調(diào)用 traitCollectionDidChange:牌里。因?yàn)?traitCollectionDidChange: 旨在作為無效回調(diào)來通知您一個或多個特征已更改颊咬,請審核此方法的現(xiàn)有實(shí)現(xiàn),以及 UIContentContainer 方法willTransitionToTraitCollection:withTransitionCoordinator:,用于您可能依賴它的地方觸發(fā)初始設(shè)置喳篇。懶惰地執(zhí)行使用 traitCollection 的工作的最佳位置是在上面討論的 layoutSubviews 方法之一敞临,但請記住,這些布局方法在任何時(shí)候布局都會被調(diào)用麸澜,所以一定要避免在不需要時(shí)重復(fù)工作挺尿。

? 您現(xiàn)在可以啟用調(diào)試日志記錄,以便在您自己的類上調(diào)用 traitCollectionDidChange:或willTransitionToTraitCollection:withTransitionCoordinator: 時(shí)痰憎。使用以下啟動參數(shù)打開日志記錄:-UITraitCollectionChangeLoggingEnabled YES票髓。您可能希望在使用此啟動參數(shù)并從 Xcode 運(yùn)行應(yīng)用程序時(shí)暫時(shí)禁用主線程檢查程序,以避免為不相關(guān)的類添加額外的日志消息铣耘。

? UITableViewCell 類的 contentView 屬性始終與前面和后面的相鄰附件進(jìn)行邊對邊布局洽沟。這簡化了布局代碼,因此想要正確的默認(rèn)偏移的開發(fā)人員不再需要將其內(nèi)容與內(nèi)容視圖邊框或布局邊距對齊蜗细,具體取決于尾部是否有附件裆操。您現(xiàn)在應(yīng)該始終在單元格內(nèi)容視圖的布局邊距上布置代碼以獲取默認(rèn)的系統(tǒng)插入。這些插入將根據(jù)單元格中可見的附件自動調(diào)整炉媒,以匹配系統(tǒng)的默認(rèn)間距踪区。

? 您現(xiàn)在可以從創(chuàng)建 block 調(diào)用自定義初始化程序,該創(chuàng)建塊通過 instantiateInitialViewController(creator:) 或 instantiateViewController(identifier:creator:) 傳遞吊骤。這使您可以使用其他上下文和參數(shù)初始化視圖控制器缎岗,同時(shí)利用通過 Interface Builder 在故事板中定義它們。自定義控制器初始化程序必須調(diào)用其 super.init(coder:) 方法并傳遞它通過創(chuàng)建塊接收的編碼器參數(shù)白粉。

網(wǎng)絡(luò)
? 為了增強(qiáng)安全性传泊,當(dāng)服務(wù)器發(fā)送 Content-Type:application/octet-stream 時(shí),NSURLSession 不再嗅探 MIME 類型鸭巴。

? NSURLRequestReloadRevalidatingCacheData 和 NSURLRequestReloadIgnoringLocalAndRemoteCacheData API現(xiàn)已可用眷细。

? 從 iOS 13 beta 4 開始,強(qiáng)制執(zhí)行 NSMutableURLRequest 的 HTTPBodyStream 屬性的 copy 操作鹃祖。如果在調(diào)用屬性設(shè)置器后對body數(shù)據(jù)進(jìn)行了修改溪椎,則 HTTP 請求中發(fā)送的數(shù)據(jù)將不包含該更變。調(diào)用該屬性的 getter 不再返回 NSMutableData 引用恬口,即使使用該類型的數(shù)據(jù)調(diào)用 setter 也是如此校读。從 iOS 13 beta 5 開始,使用 iOS 12 SDK 或以前的 SDK 構(gòu)建的應(yīng)用程序使用舊版行為祖能。

? CNCopyCurrentNetworkInfo API 返回的信息已無法反映真實(shí)情況歉秫。有關(guān)更多詳細(xì)信息,請參閱更新的API文檔和標(biāo)題芯杀。

? 包含 body 的 GET HTTP 方法的所有 NSURLSessionTask 實(shí)例現(xiàn)在都會拋出錯誤 NSURLErrorDataLengthExceedsMaximum端考。

? 刪除了對代理自動配置(PAC)的 FTP 和文件URL方案的支持雅潭。HTTP 和 HTTPS 是 PAC 唯一支持的 URL 方案。這會影響所有 PAC 配置却特,包括但不限于使用“設(shè)置”扶供,“系統(tǒng)偏好設(shè)置”,“配置文件”和 NSURLSession API(如connectionProxyDictionary 和CFNetworkExecuteProxyAutoConfigurationURL)設(shè)置的配置裂明。

? NSURLSession 和 NSURLConnection API 不再支持 SPDY椿浓。服務(wù)器應(yīng)使用 HTTP 2 或 HTTP 1.1。

音頻
? 現(xiàn)在可以在 AVAudioEngine 上啟用語音處理模式闽晦。

? 新的 AVAudioNode 類型可用于包裝用戶定義的 block扳碍,以實(shí)時(shí)發(fā)送或接收數(shù)據(jù)。

? 基于 AVAudioEngine 的應(yīng)用程序可以使用一種新方法來檢索附加到 AVAudioEngine 實(shí)例的所有節(jié)點(diǎn)的列表仙蛉。

? AVAudioEnvironmentNode 中的新渲染模式基于輸出設(shè)備自動選擇最佳空間音頻渲染算法笋敞。

? 一個新的 AVAudioSession 屬性允許在會話主動使用音頻輸入時(shí)播放系統(tǒng)聲音和觸覺。

? 新的枚舉 AVAudioSessionPromptStyle 根據(jù)系統(tǒng)中的其他音頻活動通知應(yīng)用程序應(yīng)該播放哪種語音提示荠瘪。

? AVAudioSessionRouteSharingPolicy 現(xiàn)在允許應(yīng)用指定路由共享策略夯巷,以便其音頻和視頻路由到與 AirPlay 相同的位置。

? Audio Unit Extensions 現(xiàn)在支持所有宿主應(yīng)用程序中可用的用戶預(yù)設(shè)哀墓。

? OpenAL框架已棄用趁餐,出于兼容性目的暫時(shí)保留。過渡到 AVAudioEngine 以獲得 3D 音頻功能篮绰。

? AUGraph 已被棄用后雷,轉(zhuǎn)而支持 AVAudioEngine。

? 不推薦使用應(yīng)用間音頻吠各。使用 Audio Units 支持此功能臀突。

? 不推薦使用基于 Carbon 的 Audio Units,在將來的版本中不再支持走孽。

? 不再支持舊版 Core Audio HAL 音頻硬件插件惧辈。將音頻服務(wù)器插件用于支持音頻驅(qū)動程序琳状。

音頻共享
? 音頻共享與 AirPods(第1代或更高版本)和 PowerBeats Pro 兼容磕瓷。需要 iPhone 8 或更高版本。

AVFoundation
? AVFoundation 現(xiàn)在支持使用 HEVC 和 Alpha 通道編碼視頻念逞。以這種方式編碼的視頻在 AVFoundation API 和網(wǎng)頁中的 Safari 中得到廣泛支持困食。格式的技術(shù)細(xì)節(jié)可以在互操作性配置文件規(guī)范中找到。

Core Image
? filterWithImageURL:options: 和 filterWithImageData:options: 不再支持 RAW 5 及更早版本翎承。版本 6 及更高版本仍然受支持硕盹。

? 添加了用于實(shí)例化和修改內(nèi)置 Core Image 過濾器的新 API。

? 增強(qiáng)了 CICoreMLModel 過濾器以支持具有 MLFeatureTypeMultiArray 類型的輸入或輸出的模型叨咖。

? Metal CIKernel 實(shí)例支持具有任意結(jié)構(gòu)化數(shù)據(jù)的參數(shù)瘩例。

? Metal CIKernel 實(shí)例支持返回一組2×2像素啊胶。

? CIFormat 符號的整數(shù)值(例如 kCIFormatARGB8)已更改為跨平臺一致性的新值集合。以前的值仍然支持向后兼容; 但是垛贤,您應(yīng)該避免對特定數(shù)值的依賴性焰坪。

Mail
現(xiàn)在可以在“設(shè)置”>“郵件”中啟用“忽略已阻止的發(fā)件人”。被阻止的聯(lián)系人列表與 Messages聘惦,F(xiàn)aceTime 和 Phone 共享某饰。

參考(如有侵權(quán),請聯(lián)系我):
iOS13適配
iOS13適配
iOS13web適配

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末善绎,一起剝皮案震驚了整個濱河市黔漂,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌禀酱,老刑警劉巖炬守,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異剂跟,居然都是意外死亡劳较,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門浩聋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來观蜗,“玉大人,你說我怎么就攤上這事衣洁∧鼓恚” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵坊夫,是天一觀的道長砖第。 經(jīng)常有香客問我,道長环凿,這世上最難降的妖魔是什么梧兼? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮智听,結(jié)果婚禮上羽杰,老公的妹妹穿的比我還像新娘。我一直安慰自己到推,他們只是感情好考赛,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著莉测,像睡著了一般颜骤。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上捣卤,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天忍抽,我揣著相機(jī)與錄音八孝,去河邊找鬼。 笑死鸠项,一個胖子當(dāng)著我的面吹牛唆阿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播锈锤,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼驯鳖,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了久免?” 一聲冷哼從身側(cè)響起浅辙,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎阎姥,沒想到半個月后记舆,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡呼巴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年泽腮,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片衣赶。...
    茶點(diǎn)故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡诊赊,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出府瞄,到底是詐尸還是另有隱情碧磅,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布遵馆,位于F島的核電站鲸郊,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏货邓。R本人自食惡果不足惜秆撮,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望换况。 院中可真熱鬧职辨,春花似錦、人聲如沸复隆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽挽拂。三九已至,卻和暖如春骨饿,著一層夾襖步出監(jiān)牢的瞬間亏栈,已是汗流浹背台腥。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留绒北,地道東北人黎侈。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像闷游,于是被迫代替她去往敵國和親峻汉。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容

  • iOS 13 支持適配的機(jī)型 iPhone X脐往、iPhone XR休吠、iPhone XS、iPhone XS Max...
    不成活不瘋魔閱讀 44,087評論 22 131
  • 自從6月份的 WWDC大會展示了iOS 13的新版本之后业簿,廣大開發(fā)者朋友又面臨著新一輪的系統(tǒng)升級適配工作瘤礁;隨著蘋果...
    NEWWORLD閱讀 3,928評論 1 8
  • iOS 13 正式發(fā)布柜思,來看看有哪些 API 變動 iOS 13 已正式發(fā)布,網(wǎng)上對其用戶體驗(yàn)上的新特性的描述也很...
    賢宇閱讀 3,494評論 0 5
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹(jǐn) 對...
    cosWriter閱讀 11,111評論 1 32
  • 突然,小姑娘告訴我缰揪,很迷茫亡脑,覺得特別悲傷。 于是邀跃,我告訴她霉咨,傲嬌的人,沒時(shí)間悲春哀秋拍屑,一直往前就是了途戒。 ...
    瑤姐的娘親閱讀 534評論 0 1