diff options
author | Samuli Piippo <samuli.piippo@digia.com> | 2013-06-06 11:37:21 +0300 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@digia.com> | 2013-06-06 12:41:49 +0300 |
commit | b5d196d84117cd73ac531ea85997b4098c9b6b53 (patch) | |
tree | ad1f38a9542fda206ae5a8c0e526b484aa1d623d /src/utils/qdroidutils.cpp | |
parent | 1c1133cadb103e1cff5f8f456dea2006e894eea8 (diff) |
Add IP and hostname information for qdroid utils
Change-Id: I9c4bc15f34ee7a67e468b32e73d989c98d04b94a
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@digia.com>
Diffstat (limited to 'src/utils/qdroidutils.cpp')
-rw-r--r-- | src/utils/qdroidutils.cpp | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/utils/qdroidutils.cpp b/src/utils/qdroidutils.cpp index 16ed044..4247826 100644 --- a/src/utils/qdroidutils.cpp +++ b/src/utils/qdroidutils.cpp @@ -6,6 +6,9 @@ #include <hardware/lights.h> #else #include <sys/reboot.h> +#include <QNetworkInterface> +#include <QHostInfo> +#include <QFile> #endif /*! @@ -75,3 +78,56 @@ bool QDroidUtils::setDisplayBrightness(quint8 value) #endif return true; } + + +/*! + * Gets the current IP address of the device + */ +QString QDroidUtils::getIPAddress() +{ + QString address; +#ifdef Q_OS_ANDROID_NO_SDK + qDebug("QDroidUtils::getIPAddress()"); +#else + QNetworkInterface interface = QNetworkInterface::interfaceFromName("eth0"); + QList<QNetworkAddressEntry> entries; + entries = interface.addressEntries(); + if ( !entries.empty() ) { + address = entries.first().ip().toString(); + } +#endif + return address; +} + +/*! + * Gets the current hostname of the device + */ +QString QDroidUtils::getHostname() +{ + QString hostname; +#ifdef Q_OS_ANDROID_NO_SDK + qDebug("QDroidUtils::getHostname()"); +#else + hostname = QHostInfo::localHostName(); +#endif + return hostname; +} + +/*! + * Sets new hostname for the device + */ +bool QDroidUtils::setHostname(QString hostname) +{ +#ifdef Q_OS_ANDROID_NO_SDK + qDebug("QDroidUtils::setHostname()"); +#else + QFile file("/etc/hostname"); + if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) { + qWarning("Could not open hostname file"); + return false; + } + file.write(hostname.toLocal8Bit()); + file.close(); +#endif + return true; +} |