最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS中定位(location manager )出現(xiàn)log日志的解決辦法

 更新時(shí)間:2017年10月30日 12:00:33   作者:Mazy_ma  
這篇文章主要給大家介紹了關(guān)于iOS中定位(location manager )出現(xiàn)log日志的解決辦法,文中通過(guò)示例代碼將解決的辦法介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。

前言

最近發(fā)現(xiàn)一個(gè)問(wèn)題,自iOS 10.0以后,項(xiàng)目中老是出現(xiàn)有關(guān)定位管理者的日志信息,說(shuō)定位管理者最好放在主線程;在實(shí)際開(kāi)發(fā)中,當(dāng)在子線程中創(chuàng)建定位管理者,有可能收不到回調(diào)信息

提示信息如下:

A location manager (0x7fbafac12560) was created on a dispatch queue executing on a thread other than the main thread. It is the developer's responsibility to ensure that there is a run loop running on the thread on which the location manager object is allocated. In particular, creating location managers in arbitrary dispatch queues (not attached to the main queue) is not supported and will result in callbacks not being received.

中文翻譯為:一個(gè)定位管理者創(chuàng)建在子線程,而不是主線程.在開(kāi)發(fā)中,要確保一個(gè)定位管理者所在的線程要在運(yùn)行循環(huán)(Run loop)中.在實(shí)際開(kāi)發(fā)中,當(dāng)在子線程中創(chuàng)建定位管理者,有可能收不到回調(diào)信息.

解決過(guò)程

我找了好久,嘗試了好多方法,都無(wú)果: 這是在stackoverflow中搜到的解決方法

作者的問(wèn)題:

比較好的回答:

但我嘗試了,也無(wú)果.

沒(méi)辦法,有時(shí)間了就去嘗試.

解決方法:

最終解決方法是在App Delegate 內(nèi)關(guān)于地圖或者導(dǎo)航注冊(cè)信息那一塊.

這是我導(dǎo)航注冊(cè)代碼:

 //開(kāi)啟導(dǎo)航服務(wù)
 [BNCoreServices_Instance initServices:@"xxxxxxxxxxxx"];
 [BNCoreServices_Instance startServicesAsyn:^{
  NSLog(@"導(dǎo)航開(kāi)啟成功");
 } fail:^{
  NSLog(@"導(dǎo)航開(kāi)啟失敗");
 }];

我在開(kāi)啟導(dǎo)航服務(wù)的時(shí)候,使用了異步開(kāi)啟,然后主線程回調(diào)開(kāi)啟的結(jié)果.
進(jìn)入百度導(dǎo)航API發(fā)現(xiàn):

/**
 * 啟動(dòng)服務(wù),同步方法,會(huì)導(dǎo)致阻塞
 * @param SoundDelete [in]傳入遵守BNSoundManagerProtocol的實(shí)例
 * @return 啟動(dòng)結(jié)果
 */
- (BOOL)startServices;

/**
 * 啟動(dòng)服務(wù),異步方法
 *
 * @param success  啟動(dòng)成功后回調(diào) success block
 * @param fail   啟動(dòng)失敗后回調(diào) fail block
 */
-(void)startServicesAsyn:(void (^)(void))success fail:(void (^)(void))fail;

有兩個(gè)方法開(kāi)啟導(dǎo)航服務(wù):

     - 一個(gè)是在主線程同步開(kāi)啟,說(shuō)會(huì)導(dǎo)致阻塞;

     - 另外一個(gè)是異步開(kāi)啟,將結(jié)果回調(diào)到主線程.

之所以會(huì)打印上述日志,是因?yàn)槲沂褂昧水惒介_(kāi)啟導(dǎo)航服務(wù).

如果我使用同步開(kāi)啟

[BNCoreServices_Instance startServices];

就不會(huì)打印出有關(guān)定位的日志信息.

抱歉,我有強(qiáng)迫癥,不喜歡日志框有打印,所以我選擇了同步開(kāi)啟.

如果你覺(jué)得異步加載好,不會(huì)阻塞線程,可以無(wú)視打印日志的影響,你可以使用異步開(kāi)啟.

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

  • iOS13適配的實(shí)現(xiàn)方法

    iOS13適配的實(shí)現(xiàn)方法

    這篇文章主要介紹了iOS13適配的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • 詳解IOS四種保存數(shù)據(jù)的方式

    詳解IOS四種保存數(shù)據(jù)的方式

    本篇文章主要介紹了OS四種保存數(shù)據(jù)的方式,現(xiàn)在分享給大家,也給大家做個(gè)參考。感興趣的小伙伴們可以參考一下。
    2016-11-11
  • iOS測(cè)試手機(jī)APP的方法匯總:真機(jī)運(yùn)行,打ipa包,testFlighe,蒲公英

    iOS測(cè)試手機(jī)APP的方法匯總:真機(jī)運(yùn)行,打ipa包,testFlighe,蒲公英

    這篇文章主要介紹了iOS通常測(cè)試手機(jī)APP的四種方法:真機(jī)運(yùn)行,打ipa包,(testFlighe)郵件,蒲公英測(cè)試。需要的朋友可以參考下
    2022-12-12
  • 以代碼實(shí)例總結(jié)iOS應(yīng)用開(kāi)發(fā)中數(shù)據(jù)的存儲(chǔ)方式

    以代碼實(shí)例總結(jié)iOS應(yīng)用開(kāi)發(fā)中數(shù)據(jù)的存儲(chǔ)方式

    這篇文章主要介紹了iOS應(yīng)用開(kāi)發(fā)中數(shù)據(jù)的存儲(chǔ)方式的實(shí)例總結(jié),代碼為傳統(tǒng)的Objective-C語(yǔ)言,需要的朋友可以參考下
    2016-02-02
  • iOS自定義可展示、交互的scrollView滾動(dòng)條

    iOS自定義可展示、交互的scrollView滾動(dòng)條

    這篇文章主要為大家詳細(xì)介紹了iOS自定義可展示、交互的scrollView滾動(dòng)條,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Objective-C方法的聲明實(shí)現(xiàn)及調(diào)用方法

    Objective-C方法的聲明實(shí)現(xiàn)及調(diào)用方法

    這篇文章主要介紹了Objective-C方法的聲明實(shí)現(xiàn)及調(diào)用方法,包括五參數(shù)的方法和單個(gè)參數(shù)的方法,結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧
    2024-02-02
  • 最新評(píng)論

    宾川县| 德安县| 萨迦县| 南部县| 横峰县| 务川| 丁青县| 西安市| 屯留县| 金平| 邻水| 含山县| 庆城县| 金昌市| 楚雄市| 和田市| 进贤县| 菏泽市| 小金县| 翼城县| 宁晋县| 鄄城县| 叙永县| 朝阳县| 北安市| 板桥市| 手游| 枣强县| 河北省| 南平市| 牡丹江市| 婺源县| 隆尧县| 永泰县| 息烽县| 余庆县| 华宁县| 高州市| 梁平县| 大庆市| 怀集县|