寫在前面
上述情況在開發過程中是經常遇到的,不同方式的選擇會影響最後使用者互動體驗。這一點感悟正是源於上一周工作遇到的問題:適配ios10,如何獲取應用聯網許可權用以管理系統對話方塊的顯示管理。當我把這個問題解決後,感覺有必要將常用的ios系統許可權做乙個總結,以便後用。
許可權分類
聯網許可權
相簿許可權--ios 9.0之前
相簿許可權--ios 8.0之後
相機和麥克風許可權
定位許可權
配置檔案
推送許可權
通訊錄許可權
ios9.0之前
ios9.0及以後
cnauthorizationstatus status = [cncontactstore authorizationstatusforentitytype:cnentitytypecontacts];
switch (status)
break; case cnauthorizationstatusdenied: break; case cnauthorizationstatusrestricted: break; case cnauthorizationstatusnotdetermined: break; }
cncontactstore *contactstore = [[cncontactstore alloc] init];
[contactstore requestaccessforentitytype:cnentitytypecontacts completionhandler:^(bool granted, nserror * _nullable error) else }];
日曆、備忘錄許可權
最後一點
更新記錄:2016.9.22新增ios9.0以後訪問通訊錄許可權;
stm32中的DMA你搞懂了嗎!!!
一.對於大容量的stm32晶元有2個dma控制器,控制器1有7個通道,控制器2有5個通道 每個通道都可以配置一些外設的位址。二.通道的配置過程 1.首先設定cparx暫存器和cmarx暫存器。通過dma控制器把乙個位址的值複製到另外乙個位址,通過dma控制器自動開啟一條通道完成。cparx暫存器存放...
iOS開發幾年了,你清楚OC中的這些東西麼
zeroj 前言 oc中的物件的建立 首先會通過 id alloc 動態的分配所有的變數以及父類定義的變數所需要的足夠記憶體,同時會清除所有的分配的記憶體空間,全部置為0 同時接著需要呼叫class的 id init 方法,這個方法給每個變數設定初始值 返回的型別為id,id是乙個可以指向任意型別的...
iOS開發幾年了,你清楚OC中的這些東西麼1
前言 1.oc中的物件的建立 首先會通過 id alloc 動態的分配所有的變數以及父類定義的變數所需要的足夠記憶體,同時會清除所有的分配的記憶體空間,全部置為0 2.同時接著需要呼叫class的 id init 方法,這個方法給每個變數設定初始值 3.返回的型別為id,id是乙個可以指向任意型別的...