2009-02-21 26 views

Trả lời

25
musicPlayer = [[MPMusicPlayerController iPodMusicPlayer]; 

currentVolume = musicPlayer.volume; 

này hiện bị phản đối như của iOS8 .0 vì vậy hãy thử những điều sau

#import <AVFoundation/AVAudioSession.h> 

AVAudioSession *audioSession = [AVAudioSession sharedInstance]; 
CGFloat volume = audioSession.outputVolume; 
+0

Đây là câu trả lời thực sự! –

+2

Điều này trả về mức âm lượng nhạc chứ không phải mức âm lượng của hệ thống. –

+0

Chúng là một và giống nhau. – amergin

2

Celestial.framework có lớp AVSystemController cho phép bạn lấy và đặt âm lượng hiện tại. Đáng tiếc là nó là một lớp riêng để Apple sẽ không chấp nhận nó trong App Store đệ trình

Nếu hữu ích, bạn có thể lạm dụng công MPVolumeView lớp một chút: http://www.stormyprods.com/blogger/2008/09/proper-usage-of-mpvolumeview-class.html

+0

Làm thế nào mà tôi nhớ đó? Cảm ơn! –

+0

Hi, rpetrich, là nó có thể thay đổi khối lượng trên toàn hệ thống thông qua MPVolumeView ... – iXcoder

+0

Robin: có, nó có thể, nhưng không mong đợi để có ứng dụng của bạn trong cửa hàng nếu bạn làm (và có nhiều phương pháp đơn giản hơn cung cấp dễ dàng truy cập trong Celestial) – rpetrich

0

Thêm MediaPlayer Khung vào dự án của bạn

enter image description here

.h (Tiêu đề tập tin)

{ 

    MPMusicPlayerController *musicPlayer; 

} 

.m (file thực thi)

- (void)viewDidLoad 

{ 

//get device volume level 

    musicPlayer = [MPMusicPlayerController iPodMusicPlayer]; 

    float deviceVolumeLevel = musicPlayer.volume; 

    NSLog(@"Current device volume level : %f",deviceVolumeLevel); 
} 
0

nhanh chóng 3,0

..

import AVKit 
.. 
    // get current level: 
    let audioSession = AVAudioSession.sharedInstance() 
    let volume : Float = audioSession.outputVolume 
Các vấn đề liên quan