IOS8 ARM64下奇怪的崩潰問題

2021-07-04 07:28:14 字數 888 閱讀 8884

老產品的**裡面使用了algorithmhelper作為加解密方法,md5,des,rsa。一直使用得好好的。

後來大部分手機公升級成arm64和ios8系統之後,產品經常莫名其妙的崩潰。。。人也整崩潰了。

使用**遮蔽法,最後定位到[

nsdata

base64datafromstring

:text]

ios7以前因為nsdata不直接支援base64的轉換,所以有用自寫方法拓展使nsdata支援base64

後來上網找到,ios7之後nsdata有支援原生的base64轉換。。。使用方法如下

nsdata* sampledata = [@

"some sample data"

datausingencoding:nsutf8stringencoding]; 

nsstring * base64string = [sampledata base64encodedstringwithoptions:0]; 

nslog(@」base64-encoded string is %@」, base64string); // prints 」u29tzsbzyw1wbgugzgf0yq==」

nsdata* datafromstring = [[nsdata alloc] initwithbase64encodedstring:base64string options:0]; 

nslog(@」string is %@」,[nsstring stringwithutf8string:[datafromstring bytes]]); // prints 」string is some sample data」

於是替換之

果然沒有崩潰了,繼續觀察看看會不會還有別的問題。ios8+arm64還有很多坑,希望大家不要中招哈。

iOS8下的開發變化

ios8即將推出,蘋果已經提供了ios8 developer demo以及xcode6 demo。在此分享下目前為止ios8的對應要點。原創,請帶 2014 8 5更新內容 1.ios8 beta5更新後,存在 tel 變不好用的問題了。目前正在調查中。2.嚴重問題 現在的viewdidload的呼...

iOS8下的遠端推送

昨天做了一下遠端推送,今天寫下來,分享給需要的人。參考了很多篇文章,或許是ios8的改動,沒有一篇可以完整的看下來,所以打算自己寫一篇。後台我也寫了,用的是sae,php 很簡單,呼叫sae封裝好的乙個類就可以向apns發推送資訊。首先,來說一下蘋果的推送機制。顧名思義,推送,是指伺服器向客戶端傳送...

ios8 定位授權 在設定中修改崩潰的解決

1 在plist檔案中新增的字段 二選一 不用全部新增 nslocationalwaysusagedescription nslocationwheninuseusagedescription 都是字串型別 他們不是簡單的設定成yes 而是對使用者選擇定位服務後的說明 2 當定位授權時 你手動獲取授...