Skip to content

Mobile and Embedded

The forum for developing everything embedded: Linux, WinCE, Symbian, MeeGo... you name it.
14.1k Topics 62.3k Posts
  • 0 Votes
    6 Posts
    337 Views
    @ljxiango maybe use qt code to check permissions. https://doc.qt.io/qt-6/qtandroidprivate.html Qt6 has a lot of changes. Do not expect everything is the same.
  • 0 Votes
    6 Posts
    253 Views
    I solved this deployment issue after following solution from this post: https://forum.qt.io/topic/140996/qt-6-4-1-android-installing-the-app-failed-with-an-unknown-error
  • Boot2qt auto launch of application issue

    Unsolved 18 Apr 2025, 02:55
    0 Votes
    2 Posts
    113 Views
    Hi and welcome to devnet, Boot2Qt being a commercial product, you should contact the Qt Company. That said, I would check that you have all the required libraries and plugins installed on your device.
  • Deployment AVD cannot be started

    Unsolved 13 Apr 2025, 20:32
    0 Votes
    1 Posts
    112 Views
    No one has replied
  • Mobile development

    Unsolved 13 Apr 2025, 17:02
    0 Votes
    2 Posts
    133 Views
    Hi and welcome to devnet, Did you already went through the Qt for Androïd Getting Started guide ?
  • Building for iOS: fatal error: 'fp.h' file not found

    Unsolved 7 Apr 2025, 14:05
    0 Votes
    4 Posts
    1k Views
    Ah that makes sense. Thanks @patrickkidd
  • 0 Votes
    3 Posts
    170 Views
    @jsulm Thanks for the feedback. I think that at least Qt5.15 is required to supports Android 13 (see https://medium.com/@shmilysyg/set-android-target-sdk-level-33-in-qt-38bb9049924c). I prefer using Qt5.15.2 since I am using .pro files. Also, I suppose that I need higher JDK and NDK versions. While I do not think that the issue is related to the code (I tested Qt example and did not work), here is my formatted code: void MainWindow::deviceDiscovered(const QBluetoothDeviceInfo &device) { qDebug() << "[BLE] Raw: " << device.name() << device.address().toString(); if(device.coreConfigurations()&QBluetoothDeviceInfo::LowEnergyCoreConfiguration) { qDebug() << "Discovered:" << device.name() << device.address().toString(); if(BLE_liste->findItems(device.name()+"\n"+device.address().toString(),Qt::MatchExactly).count()==0) { BLE_liste->addItem(device.name()+"\n"+device.address().toString()); *dev_info=device; QBluetoothDeviceInfo* temp_info=new QBluetoothDeviceInfo; *temp_info=device; dev_info_list.append(temp_info); } } } void MainWindow::searchCharacteristic() { if(BLE_service){ foreach (QLowEnergyCharacteristic c, BLE_service->characteristics()) { if(c.isValid()){ if (c.properties() & QLowEnergyCharacteristic::WriteNoResponse || c.properties() & QLowEnergyCharacteristic::Write) { m_writeCharacteristic = c; if(c.properties() & QLowEnergyCharacteristic::WriteNoResponse) m_writeMode = QLowEnergyService::WriteWithoutResponse; else m_writeMode = QLowEnergyService::WriteWithResponse; } if (c.properties() & QLowEnergyCharacteristic::Read) m_readCharacteristic = c; if(c.properties() & QLowEnergyCharacteristic::Notify) { m_notificationDesc = c.descriptor( QBluetoothUuid::ClientCharacteristicConfiguration); if (m_notificationDesc.isValid()) { BLE_service->writeDescriptor(m_notificationDesc, QByteArray::fromHex("0100")); } } } } } } void MainWindow::on_listWidget_itemClicked(QListWidgetItem *item) { string = item->text(); string = string.split("\n").at(0); //get the 1st word in string *dev_info=*(dev_info_list.at(BLE_liste->row(item))); BLE_controlleur=new QLowEnergyController(*dev_info,this); connect(BLE_controlleur, SIGNAL(connected()),this,SLOT(device_connected())); connect(BLE_controlleur, SIGNAL(discoveryFinished()),this,SLOT(service_discovered())); BLE_controlleur->connectToDevice(); } void MainWindow::device_connected() { BLE_controlleur->discoverServices(); } void MainWindow::service_discovered() { services_discovered=1; m_servicesUuid = BLE_controlleur->services(); int maxl=m_servicesUuid.length(); for(int i=0;i<maxl;i++) { if(m_servicesUuid.at(i).toString()=="{6e400001-b5a3-f393-e0a9-e50e24dcca9e}") { BLE_service= BLE_controlleur->createServiceObject(m_servicesUuid.at(i), this); connect(BLE_service, SIGNAL(stateChanged(QLowEnergyService::ServiceState)), this, SLOT(onServiceStateChanged(QLowEnergyService::ServiceState))); connect(BLE_service, SIGNAL(characteristicWritten(QLowEnergyCharacteristic,QByteArray)), this, SLOT(update_com_state_(QLowEnergyCharacteristic,QByteArray))); connect(BLE_service, SIGNAL(error(QLowEnergyService::ServiceError)), this, SLOT(error_slot(QLowEnergyService::ServiceError))); connect(Comm_timer, SIGNAL(timeout()),this, SLOT(update_com_state())); if(BLE_service->state() == QLowEnergyService::DiscoveryRequired) { BLE_service->discoverDetails(); } else searchCharacteristic(); BLE_liste->setStyleSheet("QListWidget{background-color: rgba(0,0,0,0);color:rgb(202,233,250);font-weight:bold;font-family:Myriad Pro Regular;font-size:64px;border:4px solid rgb(249,159,65);border-radius:12px;} QListWidget::item:selected{background:rgb(249,159,65);color:rgb(0,0,0);}"); } } } void MainWindow::onServiceStateChanged(QLowEnergyService::ServiceState s) { if (s == QLowEnergyService::ServiceDiscovered) { searchCharacteristic(); } } void MainWindow::BLE_search_slot() { if(agent!=nullptr) { delete agent; } if(ble_widget->isHidden()==false) { if(localDevice.hostMode()==QBluetoothLocalDevice::HostPoweredOff) {localDevice.powerOn(); QTimer::singleShot(2000, this, SLOT(BLE_search_slot())); } BLE_liste->clear(); dev_info_list.clear(); QtAndroid::requestPermissionsSync({ "android.permission.ACCESS_FINE_LOCATION", "android.permission.BLUETOOTH_SCAN", "android.permission.BLUETOOTH_CONNECT" }); agent = new QBluetoothDeviceDiscoveryAgent(); // create an object in ctors connect(agent, SIGNAL(deviceDiscovered(QBluetoothDeviceInfo)),this, SLOT(deviceDiscovered(QBluetoothDeviceInfo))); agent->start(QBluetoothDeviceDiscoveryAgent::LowEnergyMethod); } }
  • Camera on Android how to adjust the brightness ?

    Solved 9 Apr 2025, 13:57
    0 Votes
    4 Posts
    166 Views
    @LZHD OK, if supportedFeatures says exposure compensation is not supported then it will not work with Qt. What Qt version do you use?
  • Keeping the UI alive

    Unsolved 5 Apr 2025, 02:45
    0 Votes
    8 Posts
    496 Views
    Thanks @jsulm I'll give it a go immediately!
  • how to open file ? qt for ios?

    Unsolved 8 Apr 2025, 09:46
    0 Votes
    5 Posts
    207 Views
    @kkgg said in how to open file ? qt for ios?: I don't need to access the contents of the album You're trying to open a file and for this your app needs permissions. Also consider what @J-Hilk wrote.
  • 0 Votes
    1 Posts
    101 Views
    No one has replied
  • This topic is deleted!

    Unsolved 7 Apr 2025, 00:17
    0 Votes
    0 Posts
    30 Views
    No one has replied
  • Boot2Qt Waveshare Display is not Working

    Unsolved 10 Jan 2022, 05:27
    0 Votes
    3 Posts
    457 Views
    hey @Jacob-Chafin ! Did you ever make it work ?
  • 0 Votes
    2 Posts
    150 Views
    Up! just need 4 more testers ;)
  • Compiling Qt6 with wayland support

    Unsolved 2 Apr 2025, 19:53
    0 Votes
    2 Posts
    238 Views
    Any one know where this file can be found?
  • 0 Votes
    3 Posts
    211 Views
    @SGaist Thank you, your answer helped me!
  • 0 Votes
    4 Posts
    330 Views
    Interesting, I received complaints from some users that this happens with and Android app I developed. They experience a grey screen on Android 15 (Qt 6.8.3) on Pixel phones. I have not experienced this myself on Android 14 on a Samsung Galaxy S22.
  • 0 Votes
    15 Posts
    3k Views
    Qt is very sensitive to the environment, and releases often contain bugs. The main conditions for successful assembly and debugging in my case: Android build-tool version: should be the latest, i.e. the maximum with which the build is successful. If the build is not successful, then the version should be downgraded. Android build platform SDK: should be the latest, i.e. the maximum, with which the build is successful. If the build is not successful, then you should downgrade the version (https://doc.qt.io/qt-6/android.html + select your Qt release on the page). By the way, on 04/02/2025, the application using API 35 is not built and you should select the previous API version (34). Android NDK must be exactly the one specified in the documentation for the Qt version used (https://doc.qt.io/qt-6/android.html + select your Qt release on the page). For example, for version Qt 6.8.3 and Qt creator version 16.0.0, successful building and debugging were provided by the following set of components: -build-tool version: 35.0.1 -build platform SDK: 34 or 33 -android NDK: 26.1.10909125 [image: 43d9a4f8-0edc-40c9-8c1b-a2ef980b3505.PNG] [image: 10b3d856-52fb-4088-8969-2115ba09579e.PNG]
  • 0 Votes
    1 Posts
    82 Views
    No one has replied
  • library "libssl.so.1.1" not found

    Solved 26 Jul 2020, 10:24
    1 Votes
    20 Posts
    4k Views
    @Shrinidhi-Upadhyaya hello,I followed the same method to test, and the test has been successful, but it still reminds me that some libraries are missing,why is this? library "libcrypto.so.1.1" not found library "libcrypto" not found library "crypto.so.1.1" not found library "crypto" not found library "libmaliinstr.so" not found library "libresolv.so" not found library "libresolv" not found : library "resolv.so" not found library "resolv" not found