iOS開發中的這些許可權,你搞懂了嗎?

2021-09-07 08:25:20 字數 999 閱讀 9822

寫在前面

上述情況在開發過程中是經常遇到的,不同方式的選擇會影響最後使用者互動體驗。這一點感悟正是源於上一周工作遇到的問題:適配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是乙個可以指向任意型別的...