原创 FBRetainCycleDetector深入解析

FBRetainCycleDetector是FaceBook開源的用於檢測強引用循環的工具。默認是在DEBUG環境中啓用,當然你也可以通過設置RETAIN_CYCLE_DETECTOR_ENABLED以始終開啓。需要注意的是,FB

原创 Mac關閉自動更新

Mac的自動更新可謂是噁心至極,有時候想打開某個軟件,卻發現打不開,提示正在安裝新版本。有時右側通知欄一直提示安裝新系統,不管吧,一直顯示在右側礙事,管吧要麼讓你立即重啓,要麼一小時後嘗試或者今晚嘗試,就是不能關閉取消,煩的一批。

原创 iOS發送短信並設置短信內容

- (void)messageButtonEvent{ // 短信號碼可以爲空 NSString *phone = [NSString stringWithFormat:@"10086"];// 發短信的號碼

原创 iOS任意圓角與View漸變

開發中經常不規則圓角及漸變的需求,看着挺複雜,其實實現只需要幾句代碼。先看看效果圖,右上角的View既包含不規則的圓角,又包含漸變,裏面的按鈕也包含漸變 實現代碼: self.totalView = [[UIView allo

原创 iOS內購被拒整理

Guideline 2.1 - Performance - App Completeness We found that while you have submitted in-app purchase products for

原创 iOS內存泄漏的檢測與修復(AFNetWorking內存泄漏)

什麼是內存泄漏 內存泄漏就是你申請了一份內存,但是由於某種原因,程序未釋放或無法釋放,造成系統內存的浪費。 造成內存泄漏原因是什麼 現在一般都是ARC環境,所以造成內存泄漏的原因主要是強引用循環,還有就是添加的一些觀察者沒有解除觀

原创 iOS dismissViewController到指定頁面或dismiss多層

項目中經常有這樣的需求: A present彈出 B B present彈出 C C dismiss回到 A 對數模態彈出的控制器不像push的那樣,有系統的導航欄統一管理。爲實現這一目的,我仔細研究了官方文檔,發現了這麼一句話

原创 iOS自定義UIActivity實現分享詳解

我們在使用系統分享的時候,會發現有些平臺系統分享是不支持的,比如你想分享到四個平臺,系統支持三個,另一個不支持。這個時候我們可以通過自定義UIActivity將另一個平臺加到系統分享中。 UIActivity是個抽象類,我們需要繼

原创 iOS本機號碼一鍵登錄

我們發現很多知名的App都有本機號碼一鍵登錄的功能,甚至你把他卸載了再安裝,他依然能實現一鍵登錄的功能,是不是感覺好方便,好想自己的App也有這個功能。那他們是怎麼實現的呢? 方案一:阿里雲號碼認證服務 我們只需要集成阿里雲的S

原创 iOS倒計時動畫

效果圖 製作成gif之後,幀率變快了,看起來很彆扭,實際上是每秒執行一次的 .h 文件 @interface CountDownView : UIView @property (nonatomic, assign) long l

原创 iOS關於啓動時間的檢測及優化

啓動時間 啓動時間可謂是用戶對你的App的第一印象,用戶好不容易下載了App,然後饒有興致的開打App,啓動時間過長很可能會讓用戶直接把App打入冷宮。就算用戶非常有耐心,蘋果的watch dog機制也會kill掉啓動時間過長的A

原创 iOS導航欄pop到指定頁面/pop多層

實際開發中,經常有一次pop多層頁面的需求,每次判斷是在太麻煩了,於是我爲UINavigationController寫了一個Extension。純粹的乾貨,可以複製粘貼使用。 .h 文件 @interface UINavigat

原创 數據庫插入數據報錯Unknown error finalizing or resetting statement (19: UNIQUE constraint failed:xxx.xxx)

PRIMARY Key: 唯一標識數據庫表中的各行/記錄。 NOT NULL: 確保某列不能有 NULL 值 UNIQUE: 確保某列中的所有值是不同的。 當插入相同的值時會報錯: Unknown error finalizing

原创 iOS設置日誌等級,解放控制檯

背景 開發中我們經常需要用到Log來調試問題,但我們也常常深受其害。開發新功能的時候,總是被一些亂七八糟的日誌所幹擾,找不到自己需要的日誌信息。這個時候你一定想快速的屏蔽掉那些暫時不需要關心的Log。日誌分級由此而生。 日誌分級

原创 iOS 獲取當前控制器 getCurrentViewController 各種結構的項目可以通用

項目中經常需要拿到當前的視圖控制器,但是每個項目結構不同,每次都要針對某個項目去寫一個獲取當前控制器的方法,感覺很不爽,今天終於抽時間搞了一套通用的方法。分享給大家,如果有不對的地方,望大神指正。 實現: #define kAppDel