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

IOS代碼修改音量實例詳解

 更新時間:2017年05月26日 11:23:41   投稿:lqh  
這篇文章主要介紹了IOS代碼修改音量實例詳解的相關資料,需要的朋友可以參考下

IOS代碼修改音量實例詳解

最近在做一個項目,需要用戶在打開APP后,自動將音量調(diào)節(jié)到某個值,于是研究了一下。

之前做過iOS上聲音的研究,蘋果對iPhone設備的輸入/輸出的控制很嚴格,因為蘋果要控制用戶體驗的一致性。比如:用戶將耳機拔下來的時候,蘋果認為,用戶這時候不希望其他人知道自己在聽什么,于是這時候聲音會被自動暫停。在音量調(diào)整上,蘋果也采取了類似的策略。蘋果認為,用戶不需要APP來為他指定音量,因為這樣有時候用戶會感到不舒服。蘋果的開發(fā)文檔是這么說的:

You cannot change device volume programatically,however MPVolumeView (volume slider) is there to change device volume but only through user interaction. 

蘋果提供了一個讓用戶手動修改音量的方法:MPVolumeView。用戶通過拖動slider bar修改音量,就是下面這玩意兒:


雖然蘋果將幾乎所有的代碼實現(xiàn)控制音量的方法都堵死了,但通過一些私有的方法還是可以修改的。比如,我們遍歷一下MPVolumeView的subViews,從中得到UISlider,然后修改slider的value。這種方法雖然可以修改,但訪問了私有的類,有被App Store拒絕的風險。而且不知道什么時候蘋果修改MPVolumeView的結(jié)構(gòu),這樣的方法就不行了。

下面介紹一個可以修改音量的小trick,一個蘋果想干掉而沒法干掉的方法:

MPMusicPlayerController* musicController = [MPMusicPlayerController applicationMusicPlayer]; 
musicController.volume = 0.2; 

使用之前需要添加MediaPlayer.framework。

為什么說蘋果想干掉而沒法干掉呢?這個方法是在iOS3.0里添加的,當時估計還沒有”不允許使用代碼修改音量“這樣的規(guī)范;后來在7.0的時候,這個方法被depress掉了,說明蘋果是想干掉的。但是對于一個持續(xù)改進的系統(tǒng)來說,一般都要做向前兼容,否則就會出現(xiàn)像WP6-WP7-WP8這樣的悲劇。所以蘋果對于去掉一個方法是非常謹慎的,終于還是把這個方法留著了,在它強大的圍墻里給開發(fā)都留下了一扇窗戶。

 感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • iOS鍵盤如何添加隱藏鍵盤功能

    iOS鍵盤如何添加隱藏鍵盤功能

    這篇文章主要為大家詳細介紹了iOS鍵盤如何添加隱藏鍵盤功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • 簡單好用可任意定制的iOS Popover氣泡效果

    簡單好用可任意定制的iOS Popover氣泡效果

    Popover(氣泡彈出框/彈出式氣泡/氣泡)是由一個矩形和三角箭頭組成的彈出窗口,箭頭指向的地方通常是導致Popover彈出的控件或區(qū)域。本文通過實例代碼給大家介紹了iOS Popover氣泡效果,需要的朋友參考下吧
    2017-12-12
  • iOS指紋識別的簡單應用

    iOS指紋識別的簡單應用

    這篇文章主要為大家詳細介紹了iOS指紋識別的簡單應用,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • iOS使用xib手動實現(xiàn)動畫效果的方法

    iOS使用xib手動實現(xiàn)動畫效果的方法

    下面小編就為大家分享一篇iOS使用xib手動實現(xiàn)動畫效果的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • iOS開發(fā)之觸摸事件以及手勢

    iOS開發(fā)之觸摸事件以及手勢

    這篇文章主要為大家詳細介紹了iOS開發(fā)之觸摸事件以及手勢的相關資料,感興趣的小伙伴們可以參考一下
    2016-04-04
  • ios之UIScrollerView滾動視圖總結(jié)

    ios之UIScrollerView滾動視圖總結(jié)

    本篇文章主要介紹了ios之UIScrollerView滾動視圖總結(jié),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • IOS  Swift3 四種單例模式詳解及實例

    IOS Swift3 四種單例模式詳解及實例

    這篇文章主要介紹了IOS Swift3 四種單例模式詳解及實例的相關資料,這里對四種單例模式進行了實例介紹 ,需要的朋友可以參考下
    2016-12-12
  • Xcode清理緩存和垃圾文件的教程

    Xcode清理緩存和垃圾文件的教程

    下面小編就為大家分享一篇Xcode清理緩存和垃圾文件的教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • iOS 自定義狀態(tài)欄和導航欄詳細介紹

    iOS 自定義狀態(tài)欄和導航欄詳細介紹

    這篇文章主要介紹了iOS 自定義狀態(tài)欄和導航欄詳細介紹的相關資料,需要的朋友可以參考下
    2016-11-11
  • iOS開發(fā)微信支付的方法

    iOS開發(fā)微信支付的方法

    這篇文章主要為大家詳細介紹了iOS開發(fā)微信支付的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01

最新評論

星子县| 枣强县| 黄大仙区| 五家渠市| 新丰县| 玛沁县| 黎城县| 赣榆县| 海丰县| 崇阳县| 枝江市| 筠连县| 中卫市| 杂多县| 噶尔县| 遵义市| 云安县| 安阳县| 寻乌县| 金乡县| 遵化市| 齐齐哈尔市| 玛曲县| 祥云县| 南华县| 宜宾县| 开封县| 镇沅| 清丰县| 山西省| 西昌市| 绥化市| 观塘区| 普兰店市| 房产| 寻乌县| 开远市| 屏南县| 名山县| 镇安县| 乾安县|