TInt lVol = 6; TInt lErr = iRepository->Set(KTelephonyIncallEarVolume,lVol); TBuf<10> lBufErr; lBufErr.AppendNum(lErr); if ( lErr == KErrNone ) { CEikonEnv::InfoWinL(_L("Phone Ear Volume Set:"),_L("Successful")); } else { CEikonEnv::InfoWinL(_L("Phone Ear Volume Set Err:"),lBufErr); } lBufErr.Zero(); lErr = iRepository->Set(KTelephonyIncallLoudspeakerVolume,lVol); lBufErr.AppendNum(lErr); if ( lErr == KErrNone ) { CEikonEnv::InfoWinL(_L("Phone Loud Speaker Volume Set:"),_L("Successful")); } else { CEikonEnv::InfoWinL(_L("Phone Loud Speaker Vol Set Err:"),lBufErr); }
CR keys To Control Phone Volume API提供按键可以在通话时控制手机音量。
- KTelephonyIncallEarVolume和KTelephonyIncallLoudspeakerVolume CR keys可以用来增加或减少通话时手机音量。
头文件:
#include <telephonyinternalcrkeys_partner.h> //CR Keys To Control Phone Volume #include <centralrepository.h> //CRepository
FROM And EX
链接库:
centralrepository.lib //CRepository
所需能力
CAPABILITY WriteUserData //required for Setting the Volume:
//Telephony Call Handling Persistent Info API.
//This API provides information related to call handling.
const TUid KCRUidCallHandling = {0x101F8784};
//Used by phone application, which contains the integer value
//of Incall in ear piece betweeen 1-10.
const TUint32 KTelephonyIncallEarVolume = 0x00000001;
//Used by phone application, which contains the integer value
//of Incall in Loud speaker betweeen 1-10.
const TUint32 KTelephonyIncallLoudspeakerVolume = 0x00000002;
手机耳机和扬声器的来电音量可以通过CRepository.的Get()方法和Set()方法传递"KTelephonyIncallEarVolume"和"TelephonyIncallLoudspeakerVolume"两个参数来控制。
//To create a CRepository object for accessing Phone Volume repository:
iRepository = CRepository::NewL(KCRUidCallHandling);
下列代码可以获得通话时耳机音量:
TBuf<3> lBufVol; TInt lVol; User::LeaveIfError(iRepository->Get(KTelephonyIncallEarVolume,lVol)); lBufVol.AppendNum(lVol); CEikonEnv::InfoWinL(_L("Phone Incall Ear Volume:"),lBufVol);
下列代码可以获得通话时扬声器音量:
TBuf<3> lBufVol; TInt lVol; User::LeaveIfError(iRepository->Get(KTelephonyIncallLoudspeakerVolume, lVol)); lBufVol.AppendNum(lVol); CEikonEnv::InfoWinL(_L("Phone Incall Loud Speaker Volume:"),lBufVol);
下列代码可以设置耳机或扬声器的音量: