TBool ScrShotsGenUtils::CheckIfAppExists(const TDesC& aAppName, const TUid& aAppUid) { TBool appFound = EFalse; RApaLsSession appLs; if(appLs.Connect()==KErrNone){ appLs.GetAllApps(); TApaAppInfo dummyAppInfo; while(appLs.GetNextApp(dummyAppInfo)!= RApaLsSession::ENoMoreAppsInList){ if(dummyAppInfo.iShortCaption[0] == '!' || dummyAppInfo.iShortCaption.Length() == 0) continue; TStringPoolObj fullName(512); fullName.Des().Copy(dummyAppInfo.iFullName); fullName.Des().LowerCase(); //we dont want to show Brahma in the app list. if(dummyAppInfo.iUid == KBrahmaUid) continue; //filtering out midlets (.fakeapp) & wrt widgets (.html) if(fullName.Des().Find(_L(".fakeapp")) != KErrNotFound || fullName.Des().Find(_L(".html")) != KErrNotFound) continue; TApaAppCapabilityBuf appCap; if(appLs.GetAppCapability(appCap, dummyAppInfo.iUid) == KErrNone){ //if its hidden its a ui app if(appCap().iAppIsHidden || appCap().iAttributes == TApaAppCapability::EControlPanelItem) continue; } if(dummyAppInfo.iCaption.Compare(aAppName) == 0 && dummyAppInfo.iUid == aAppUid){ appFound = ETrue; break; } } appLs.Close(); } return appFound; }
HBufC8* CAgentDevice::GetInfoBufferL() { //create buffer CBufBase* buffer = CBufFlat::NewL(50); CleanupStack::PushL(buffer); TBuf<128> buf; _LIT(KNewLine,"\n"); // Processor TInt cpu = 0; HAL::Get(HAL::ECPU,cpu); TBuf<8> cpuBuf; switch (cpu){ case HAL::ECPU_ARM: cpuBuf.Copy(_L("ARM")); break; case HAL::ECPU_MCORE: cpuBuf.Copy(_L("MCORE")); break; case HAL::ECPU_X86: cpuBuf.Copy(_L("X86")); break; default: cpuBuf.Copy(_L("Unknown")); break; } _LIT(KFormatProcessor,"Processor: %S\n"); buf.Zero(); buf.Format(KFormatProcessor,&cpuBuf); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // Battery _LIT(KFormatBattery,"Battery: %u%% (on AC line)\n"); _LIT(KFormatBattery2,"Battery: %u%% \n"); TUint chargeLevel=0; CTelephony::TBatteryStatus batteryStatus; iPhone->GetBatteryInfoSync(chargeLevel, batteryStatus); buf.Zero(); if((batteryStatus == CTelephony::EBatteryConnectedButExternallyPowered) || (batteryStatus == CTelephony::ENoBatteryConnected)) { buf.Format(KFormatBattery,chargeLevel); } else { buf.Format(KFormatBattery2,chargeLevel); } buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // RAM TInt ram = 0; HAL::Get(HAL::EMemoryRAM, ram); TInt freeRam = 0; HAL::Get(HAL::EMemoryRAMFree, freeRam); _LIT(KFormatRam,"Memory: %i bytes free / %i bytes total\n"); buf.Zero(); buf.Format(KFormatRam,freeRam,ram); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // Storage _LIT(KFormatStorage,"Disk %c: %S - %Li bytes free / %Li bytes total\n"); TVolumeInfo volumeInfo; //TDriveInfo driveInfo; for (TInt driveNumber=EDriveA; driveNumber<=EDriveZ; driveNumber++) { // get drive info /* TInt err = iFs.Drive(driveInfo,driveNumber); if (err!=KErrNone) { continue; } */ // get volume info TInt err = iFs.Volume(volumeInfo,driveNumber); if (err!=KErrNone) { continue; } TChar letter; iFs.DriveToChar(driveNumber,letter); buf.Zero(); buf.Format(KFormatStorage,(TUint)letter,&volumeInfo.iName,volumeInfo.iFree,volumeInfo.iSize); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); } // OS version TBuf<KSysUtilVersionTextLength> versionBuf; SysUtil::GetSWVersion(versionBuf); _LIT(KFormatOsVersion,"\nOS Version: %S \n"); buf.Zero(); buf.Format(KFormatOsVersion,&versionBuf); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // device _LIT(KFormatDevice,"\nDevice: %S (%S)\n"); TBuf<CTelephony::KPhoneManufacturerIdSize> manufacturer; TBuf<CTelephony::KPhoneModelIdSize> model; iPhone->GetPhoneIdSync(manufacturer,model); buf.Zero(); buf.Format(KFormatDevice,&model,&manufacturer); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // IMSI TBuf<CTelephony::KIMSISize> imsi; iPhone->GetImsiSync(imsi); _LIT(KFormatImsi,"IMSI: %S \n"); buf.Zero(); buf.Format(KFormatImsi,&imsi); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // IMEI TBuf<CTelephony::KPhoneSerialNumberSize> imei; iPhone->GetImeiSync(imei); _LIT(KFormatImei,"IMEI: %S \n"); buf.Zero(); buf.Format(KFormatImei,&imei); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // Carrier //TBuf<CTelephony::KNetworkShortNameSize> carrier; TBuf<CTelephony::KNetworkLongNameSize> carrier; iPhone->GetOperatorNameSync(carrier); _LIT(KFormatCarrier,"Carrier: %S \n"); buf.Zero(); buf.Format(KFormatCarrier,&carrier); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); // Uptime _LIT(KFormatUptime,"Uptime: %i days, %i hours, %i minutes\n"); TInt ms = User::NTickCount(); TInt min = (ms/(1000*60))%60; TInt hours = (ms/(1000*60*60))%24; TInt days = (ms/(1000*60*60*24)); buf.Zero(); buf.Format(KFormatUptime,days,hours,min); buffer->InsertL(buffer->Size(),buf.Ptr(),buf.Size()); if(iList) { RApaLsSession lsSession; TApaAppInfo appInfo; TApaAppCapabilityBuf capability; //_LIT(KNewLine,"\n"); // Applications list: if( lsSession.Connect() == KErrNone) { CleanupClosePushL( lsSession ); lsSession.GetAllApps(); _LIT(KAppList,"\nApplication List: \n"); buffer->InsertL(buffer->Size(),KAppList().Ptr(),KAppList().Size()); while( lsSession.GetNextApp( appInfo ) == KErrNone ) { buffer->InsertL(buffer->Size(), appInfo.iCaption.Ptr(), appInfo.iCaption.Size()); buffer->InsertL(buffer->Size(),KNewLine().Ptr(),KNewLine().Size()); } CleanupStack::PopAndDestroy(&lsSession); } // Running processes TFullName res; TFindProcess proc; _LIT(KProcList,"\nProcesses List:\n"); buffer->InsertL(buffer->Size(),KProcList().Ptr(),KProcList().Size()); while(proc.Next(res) == KErrNone) { RProcess ph; TInt err = ph.Open(proc); if(err!=KErrNone) { continue; } buffer->InsertL(buffer->Size(),ph.Name().Ptr(),ph.Name().Size()); buffer->InsertL(buffer->Size(),KNewLine().Ptr(),KNewLine().Size()); ph.Close(); } } HBufC8* result = buffer->Ptr(0).AllocL(); CleanupStack::PopAndDestroy(buffer); return result; }
void CMainView::SelectApps(TDes& aTitle) { TInt sel=0; TInt def=0; TBuf<255> result; CDesCArray* itemList = new (ELeave) CDesCArrayFlat(3); CArrayFixFlat<TInt>* DefaultSelectedItemsList=new (ELeave) CArrayFixFlat<TInt>(3); TInt i=0; RApaLsSession AppSession; AppSession.Connect(); RArray<TApplicationInfo> apps; TApaAppInfo appInfo; AppSession.GetAllApps(); TBuf<255> UidTxt; while (AppSession.GetNextApp(appInfo)==KErrNone) { if (appInfo.iCaption.Length()<2){continue;} TApplicationInfo info; info.iCaption=appInfo.iCaption; info.iUid=appInfo.iUid; apps.Append(info); } AppSession.Close(); TLinearOrder<TApplicationInfo> sortOrder(TApplicationInfo::Compare); apps.Sort(sortOrder); for (TInt i=0;i<apps.Count();i++) { TBuf<255> item; item.Copy(_L("\t")); item.Append(apps[i].iCaption); if (((CTopBatteryAppUi*)AppUi())->iApps.Find(apps[i].iUid)!=KErrNotFound){DefaultSelectedItemsList->AppendL(i);} item.Append(_L(" [")); UidTxt.Num((TUint)apps[i].iUid.iUid,EHex); UidTxt.UpperCase(); item.Append(UidTxt); item.Append(_L("]")); item.Append(_L("\t")); itemList->AppendL(item); } CAknMarkableListDialog* dlg=CAknMarkableListDialog::NewL(sel,DefaultSelectedItemsList,itemList,R_AVKON_DIALOG_EMPTY_MENUBAR); dlg->PrepareLC(R_TXT_UID_SELECTION_LIST); dlg->SetTitleL(aTitle); ((CEikListBox*)dlg->Control(ESelectionListControl))->SetSelectionIndexesL(DefaultSelectedItemsList); ((CAknSingleStyleListBox*)dlg->Control(ESelectionListControl))->ItemDrawer()->ColumnData()->EnableMarqueeL(ETrue); TInt popupOk=dlg->RunLD(); if (!popupOk) { return; } else { i=0; ((CTopBatteryAppUi*)AppUi())->iApps.Reset(); for (i=0; i<DefaultSelectedItemsList->Count(); i++) { TUint uid=apps[DefaultSelectedItemsList->At(i)].iUid.iUid; ((CTopBatteryAppUi*)AppUi())->iApps.Append(TUid::Uid(uid)); } } }
// Each test step must supply a implementation for doTestStepL enum TVerdict CTestAppLoaderEndTask::doTestStepL( void ) { // Printing to the console and log file INFO_PRINTF1(_L("TEST-> END TASK")); TPtrC program; if ( !GetStringFromConfig(ConfigSection(), KProgram, program) ) { ERR_PRINTF2(KErrMissingParameter, &KProgram()); SetTestStepResult(EFail); } else { RApaLsSession apaLsSession; User::LeaveIfError(apaLsSession.Connect()); CleanupClosePushL(apaLsSession); User::LeaveIfError(apaLsSession.GetAllApps()); RWsSession ws; User::LeaveIfError(ws.Connect()); CleanupClosePushL(ws); TInt numWindowGroups = ws.NumWindowGroups(); CArrayFixFlat<TInt>* windowGroupList = new(ELeave) CArrayFixFlat<TInt>(numWindowGroups); CleanupStack::PushL(windowGroupList); // Populate array with current group list ids User::LeaveIfError(ws.WindowGroupList(windowGroupList)); CApaWindowGroupName* windowGroupName = CApaWindowGroupName::NewLC(ws); /* Note: we use windowGroupList->Count() instead of numWindowGroups, as in the middle of the * update the list could change in length (or worse, be reduced) thus producing an out of bounds * error if numWindowGroups were used */ TBool searching=ETrue; for ( TInt i=0; (i<windowGroupList->Count()) && searching; ++i ) { TInt wgId = windowGroupList->At(i); windowGroupName->ConstructFromWgIdL(wgId); TUid appUid = windowGroupName->AppUid(); TApaAppInfo appInfo; HBufC* appCaption = NULL; // Some applications, like midlets, may not provide any info if (apaLsSession.GetAppInfo(appInfo, appUid) == KErrNone) { appCaption = appInfo.iCaption.AllocL(); } else { appCaption = windowGroupName->Caption().AllocL(); } CleanupStack::PushL(appCaption); // Only list 'visible' applications if ( appCaption->Length() ) { TPtrC caption=*appCaption; INFO_PRINTF2(KLogTask, &caption); if ( program.CompareC(caption)==0 ) { searching=EFalse; TApaTask task(ws); task.SetWgId(wgId); if (task.Exists()) { task.EndTask(); } else { ERR_PRINTF2(KErrTaskNotFound, &program); SetTestStepResult(EFail); } } } CleanupStack::Pop(1, appCaption); // taskEntry, appCaption } if ( searching ) { ERR_PRINTF2(KErrTaskNotFound, &program); SetTestStepResult(EFail); } CleanupStack::PopAndDestroy(4, &apaLsSession); // windowGroupName, windowGroupList } // test steps return a result return TestStepResult(); }
Application::Application(QmlApplicationViewer& v,QObject *parent) : QObject(parent),viewer(v) { TBuf<255> p1(_L("C:\\System\\JellyUnlock\\splash_h.jpg")); TBuf<255> p2(_L("C:\\System\\JellyUnlock\\splash_v.jpg")); splash=CSplashScreen::NewL(p2,p1); int lang=1; #ifdef Q_OS_SYMBIAN lang=User::Language(); #endif loc=new Localizer(lang,this); QFile fs(KFirstStart); isFirstStart=false; if (fs.exists()) { fs.remove(); QFile file(KConfigFile); if (file.exists()){file.remove();} isFirstStart=true; } settings=new QSettings(KConfigFile,QSettings::IniFormat); keyMap.clear(); keyMap.insert(0,180); // menu keyMap.insert(1,179); // lock keyMap.insert(2,166); // power keyMap.insert(3,196); // green keyMap.insert(4,197); // red keyMap.insert(5,171); // camera keyMap.insert(6,226); // light camera keys.clear(); settings->beginGroup("keys"); QStringList sets=settings->allKeys(); for (int i=0;i<sets.length();i++) { keys.append(settings->value(sets[i],-1).toInt()); } settings->endGroup(); if (keys.length()==0){keys.append(180);} #ifdef Q_OS_SYMBIAN RApaLsSession AppSession; AppSession.Connect(); TApaAppInfo appInfo; AppSession.GetAllApps(); TBuf<255> UidTxt; while (AppSession.GetNextApp(appInfo)==KErrNone) { HBufC* fn; if (AppSession.GetAppIcon(appInfo.iUid,fn)!=KErrNone){continue;} if (fn){delete fn;} if (appInfo.iCaption.Length()<2){continue;} TApplicationInfo info; info.iCaption=appInfo.iCaption; info.iUid=appInfo.iUid; apps.Append(info); fullApps.Append(info); } AppSession.Close(); TLinearOrder<TApplicationInfo> sortOrder(TApplicationInfo::Compare); fullApps.Sort(sortOrder); apps.Sort(sortOrder); for (int i=0; i<fullApps.Count();i++) { appModel<<QString::fromRawData(reinterpret_cast<const QChar*>(apps[i].iCaption.Ptr()),apps[i].iCaption.Length()); } #else for (int i=0; i<20;i++) { appModel<<QString::number(i); } #endif }