Q_DECL_EXPORT int main(int argc, char *argv[]) { QScopedPointer<QApplication> app(createApplication(argc, argv)); QTextStream qout(stdout); QString locale = QLocale::system().name(); QTranslator translator; if (!(translator.load("translation."+locale, ":/"))) translator.load("translation.en", ":/"); app->installTranslator(&translator); QStringList arguments = app->arguments(); if (arguments.size() > 1 && arguments.at(1) == "-wake") { QString mac = QString::null; if (arguments.contains("-mac")) { int macIdx = arguments.indexOf("-mac"); if (macIdx != -1 && arguments.count() >= macIdx+1) mac = arguments.at(macIdx+1); } if (mac == QString::null) { qout << QObject::tr("Bitte MAC-Adresse angegeben") << endl; return 1; } else { QString devName = QString::null; if (arguments.contains("-devicename")) { int nameIdx = arguments.indexOf("-devicename"); devName = arguments.at(nameIdx+1); } QSystemNetworkInfo *i = new QSystemNetworkInfo(); QSystemNetworkInfo::NetworkStatus s = i->networkStatus(QSystemNetworkInfo::WlanMode); bool success; if (s == QSystemNetworkInfo::Connected) { QmlWakeOnLan *w = new QmlWakeOnLan(); w->sendMagicPacket(mac); success = true; } else { success = false; } if (arguments.contains("-showbanner")) { QString message; if (success) { if (devName != QString::null) message = QObject::tr("Magisches Paket wurde an %1 gesendet").arg(devName); else message = QObject::tr("Magisches Paket wurde gesendet"); } else { message = QObject::tr("Das magische Paket konnte nicht gesendet werden. (Keine Verbindung mit WLAN)"); } MNotification *notification = new MNotification(MNotification::DeviceEvent, QString::null, message); notification->setImage((success ? "icon-m-transfer-done" : "icon-m-transfer-error")); notification->publish(); } return (success ? 0 : 1); } } qmlRegisterType<QmlClipboardAdapter>("com.ejjoman.plugins", 1, 0, "Clipboard"); qmlRegisterType<QmlWakeOnLan>("com.ejjoman.plugins", 1, 0, "WakeOnLan"); qmlRegisterType<QmlFilesystemAdapter>("com.ejjoman.plugins", 1, 0, "Filesystem"); QmlApplicationViewer viewer; QDeclarativeContext *context = viewer.rootContext(); WifiModel *model = new WifiModel(); context->setContextProperty("wifiModel", model); WifiList list; context->setContextProperty("wifiList", QVariant::fromValue(list.getWifiList())); QString homePath = QDir::homePath(); context->setContextProperty("homePath", homePath); viewer.setOrientation(QmlApplicationViewer::ScreenOrientationLockPortrait); viewer.setMainQmlFile(QLatin1String("qml/harmattan/main.qml")); viewer.showExpanded(); qInstallMsgHandler(0); return app->exec(); }
static void test_systemnetworkinfo(void) { QSystemNetworkInfo networkinfo; X(networkinfo.cellId()); X(networkinfo.currentMobileCountryCode()); X(networkinfo.currentMobileNetworkCode()); X(networkinfo.homeMobileCountryCode()); X(networkinfo.homeMobileNetworkCode()); X(networkinfo.locationAreaCode()); X(networkinfo.cellDataTechnology()); for(const symbol_t *sym = NetworkMode_lut; sym->key; ++sym) { QtMobility::QSystemNetworkInfo::NetworkMode mode = (QtMobility::QSystemNetworkInfo::NetworkMode) sym->val; if(QCoreApplication::arguments().count() > 2) if(!QString(sym->key).contains(QCoreApplication::arguments().at(2),Qt::CaseInsensitive)) continue; qDebug() << ""; qDebug() << "NetworkMode:" << sym->key; QNetworkInterface iface = networkinfo.interfaceForMode(mode); qDebug() << " networkinfo.interfaceForMode() ->" << iface; QString macaddr = networkinfo.macAddress(mode); qDebug() << " networkinfo.macAddress() ->" << macaddr; QSystemNetworkInfo::NetworkStatus status = networkinfo.networkStatus(mode); qDebug() << " networkinfo.networkStatus() ->" << status; QString network = networkinfo.networkName(mode); qDebug() << " networkinfo.networkName() ->" << network; int sigstr = networkinfo.networkSignalStrength(mode); qDebug() << " networkinfo.networkSignalStrength() ->" << sigstr; } }
int MyNetworkInfo::getCellId() { QSystemNetworkInfo* networkInfo = new QSystemNetworkInfo(); return networkInfo->cellId(); }