關(guān)于Custome Keyboard的一些坑

1.打開主程序:
一如很多前輩所說聚霜,即是打開containerAPP效五,蘋果提供了NSExtensionContext下的OpenURL方法噩茄,但是官方文檔中又提到:

Each extension point determines whether to support this method, or under which conditions to support this method. In iOS 8, only the Today extension point (used for creating widgets) supports this method.

可能蘋果目的是所有的extension都支持該方法,但是在iOS8中只有Today extension 是支持的续徽,而其他并不支持宵膨,想想現(xiàn)在都已經(jīng)10.2了 :D

在stackoverflow上,找到了一個解決辦法炸宵,是在iOS8.3+可以使用的。不知道后期是否還有更好的方法谷扣,但是這個是可以解決打開問題土全,如果有更好的方法,評論分享啊会涎。

UIResponder* responder = self;
while ((responder = [responder nextResponder]) != nil) {
  if ([responder respondsToSelector:@selector(openURL:)] == YES) {
      [responder performSelector:@selector(openURL:)
                      withObject:url];
        }
    }
//url是主程序的URLScheme

主程序會在AppDelegate里的

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation{
   
    return YES;
}

里接收Extension發(fā)送來的請求裹匙,要處理什么事情,只要在這里進行就可以了

2.判斷是否開啟完全訪問

[UIPasteboard generalPasteboard].string == nil ?

因為開啟了完全訪問的權(quán)限后末秃,就能訪問到系統(tǒng)的剪切板概页,所以通過這個方法間接的判斷是否開啟完全訪問。

3.實時獲取剪切板內(nèi)容
可以考慮開啟NSTimer,然后利用 [timer setFireDate:[NSDate distantPart]] 開啟练慕,在ViewDidDisappear里 [timer setFireDate:[NSDate distantFuture]] 關(guān)閉惰匙。

4.控制內(nèi)存占用問題
因為蘋果對自定義鍵盤嚴(yán)格的內(nèi)存限制技掏,超過會導(dǎo)致鍵盤直接崩潰,所以控制內(nèi)存占用是重中之重
· 避免循環(huán)引用项鬼,及時釋放
· 繪制文字會瞬間占用很大的內(nèi)存哑梳,且無法立即釋放,所以比如在加載Emoji表情的時候绘盟,盡量使用圖片來顯示鸠真。完整的Emoji表情,可以在http://www.unicode.org/emoji/index.html 找到龄毡。對應(yīng)按鍵的字符吠卷,也最后使用圖片。
· 加載圖片使用imageWithContentsOfFile的方法
· 還有一些方法的使用可以參考搜狗輸入法的優(yōu)化總結(jié)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沦零,一起剝皮案震驚了整個濱河市祭隔,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌蠢终,老刑警劉巖序攘,帶你破解...
    沈念sama閱讀 218,122評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異寻拂,居然都是意外死亡程奠,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評論 3 395
  • 文/潘曉璐 我一進店門祭钉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來瞄沙,“玉大人,你說我怎么就攤上這事慌核【嗑常” “怎么了?”我有些...
    開封第一講書人閱讀 164,491評論 0 354
  • 文/不壞的土叔 我叫張陵垮卓,是天一觀的道長垫桂。 經(jīng)常有香客問我,道長粟按,這世上最難降的妖魔是什么诬滩? 我笑而不...
    開封第一講書人閱讀 58,636評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮灭将,結(jié)果婚禮上疼鸟,老公的妹妹穿的比我還像新娘。我一直安慰自己庙曙,他們只是感情好空镜,可當(dāng)我...
    茶點故事閱讀 67,676評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般吴攒。 火紅的嫁衣襯著肌膚如雪张抄。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,541評論 1 305
  • 那天舶斧,我揣著相機與錄音欣鳖,去河邊找鬼。 笑死茴厉,一個胖子當(dāng)著我的面吹牛泽台,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播矾缓,決...
    沈念sama閱讀 40,292評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼怀酷,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了嗜闻?” 一聲冷哼從身側(cè)響起蜕依,我...
    開封第一講書人閱讀 39,211評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎琉雳,沒想到半個月后样眠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,655評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡翠肘,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,846評論 3 336
  • 正文 我和宋清朗相戀三年檐束,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片束倍。...
    茶點故事閱讀 39,965評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡被丧,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出绪妹,到底是詐尸還是另有隱情甥桂,我是刑警寧澤,帶...
    沈念sama閱讀 35,684評論 5 347
  • 正文 年R本政府宣布邮旷,位于F島的核電站黄选,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏婶肩。R本人自食惡果不足惜办陷,卻給世界環(huán)境...
    茶點故事閱讀 41,295評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望狡孔。 院中可真熱鬧,春花似錦蜂嗽、人聲如沸苗膝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,894評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽辱揭。三九已至离唐,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間问窃,已是汗流浹背亥鬓。 一陣腳步聲響...
    開封第一講書人閱讀 33,012評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留域庇,地道東北人嵌戈。 一個月前我還...
    沈念sama閱讀 48,126評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像听皿,于是被迫代替她去往敵國和親熟呛。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,914評論 2 355

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

  • 在六月份九府,總有很多熱點信息是與高考有關(guān)的。昨天在朋友圈里看到一組“高考感人相片”覆致,其中有一張是站在考場外的家長焦灼...
    留小館閱讀 246評論 4 3
  • 我?guī)е诎椎拿婢? 在形形色色的人群之中移動侄旬, 舞臺的燈光, 只有在靜謐的時刻 才會開啟篷朵。 但勾怒,在喧嘩的...
    薔薇巧克力閱讀 429評論 0 1
  • 長期從事編程活動的程序員都期望在50多歲時能爬到一個足夠高的職位腮猖,或者能順利的退休鉴扫。 但我在這里討論的可能是一個你...
    大圣眾包閱讀 466評論 2 2
  • SDWebImage的三個常用方法 愿編程讓這個世界更美好
    小苗曉雪閱讀 248評論 0 0