徹底解決iOS輸入表情,報系統(tǒng)異常問題

奮斗的七月

之前寫的一篇iOS限制輸入表情(emoji),因為輸入表情之后,服務(wù)器返回系統(tǒng)異常,所以就限制了輸入表情。但是這種方法終究不是一個最好的解決辦法,如果需求是要求可以輸入表情,并且要展示出來呢。所以我們要另辟新徑。

我們在請求有中文鏈接的網(wǎng)址時會請求失敗, 正常的處理是先把含有中文的網(wǎng)址進行編碼后在請求就會成功, 因此,我們保存表情時也可以你用這種辦法;

注意: 這里在你把轉(zhuǎn)碼后的操作發(fā)給服務(wù)器后, 需要做的一個額外操作就是, 你再從服務(wù)器去回來顯示時, 需要反轉(zhuǎn)一下之前的編碼才能正常顯示出表情符號, 否則就是一堆亂碼, 如: 123%F0%9F%98%94%E2%9C%8C%EF%B8%8F%F0%9F%98%A9%F0%9F%98%B3;

1、把含有表情的字符串進行編碼后再發(fā)送給服務(wù)端:

NSString *encodedString = (NSString *)CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)urlString, (CFStringRef)@"!$&'()*+,-./:;=?@_~%#[]", NULL, kCFStringEncodingUTF8);

2、對從服務(wù)器獲取回來含有表情的字符串進行反轉(zhuǎn)后顯示在頁面上:

NSString *showText = [serverString stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

3、把編碼的字符串反轉(zhuǎn)之后的顯示效果圖:


奮斗的七月
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 我們都知道 用戶使用移動設(shè)備發(fā)表評論或昵稱時會輸入一些emoji表情,服務(wù)器對emoji表情直接保存不兼容, 如果...
    洛少城閱讀 6,055評論 0 15
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 100,604評論 9 468
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,534評論 19 139
  • 《人生》發(fā)表于1982年,作者路遙以改革初期陜北高原的城鄉(xiāng)生活為背景,刻畫了主人公高加林——一個高中畢業(yè)生從...
    里兜啊閱讀 284評論 0 0
  • 1 三伏天出現(xiàn)在小暑和立秋之中,是一年中氣溫最高且又潮濕、悶熱的日子。 這個天,最適合,褲衩、拖鞋、空調(diào)、WIFF...
    雙人魚莉閱讀 1,215評論 6 17

友情鏈接更多精彩內(nèi)容