Hands-On Mobile and Embedded Development with Qt 5

Want to download or buy Hands-On Mobile and Embedded Development with Qt 5?

Click to download from Amazon →

Explore Qt framework and APIs for building cross-platform applications for mobile devices, embedded systems, and IoT Key Features Build cross-platform applications and deploy them across mobile and connected devices Design 2D and 3D UIs for embedded systems using Yocto and Qt Creator Build machine to machine automation solution using QtSensors, QtMQTT, and QtWebSockets Book Description Qt is a world-class framework, helping you to develop rich graphical user interfaces (GUIs) and multi-platform applications that run on all major desktop platforms and most mobile or embedded platforms. The framework helps you connect the dots across platforms and between online and physical experience. This book will help you leverage the fully-featured Qt framework and its modular cross-platform library classes and intuitive APIs to develop applications for mobile, IoT, and industrial embedded systems. Considerations such as screen size, device orientation changes, and small memory will be discussed. We will focus on various core aspects of embedded and mobile systems, such as connectivity, networking, and sensors; there is no IoT without sensors. You will learn how to quickly design a flexible, fast, and responsive UI that looks great. Going further, you will implement different elements in a matter of minutes and synchronize the UI elements with the 3D assets with high precision. You will learn how to create high-performance embedded systems with 3D/2D user interfaces, and deploy and test on your target hardware. The book will explore several new features, including Qt for WebAssembly. At the end of this book, you will learn about creating a full software stack for embedded Linux systems using Yocto and Boot to Qt for Device Creation. What you will learn Explore the latest features of Qt, such as preview for Qt for Python and Qt for WebAssembly Create fluid UIs with a dynamic layout for different sized screens Deploy embedded applications on Linux systems using Yocto Design Qt APIs for building applications for embedded and mobile devices Utilize connectivity for networked and machine automated applications Discover effective techniques to apply graphical effects using Qt Quick apps Who this book is for The book is ideal for mobile developers, embedded systems engineers and enthusiasts who are interested in building cross-platform applications with Qt. Prior knowledge of C++ is required.

Table of contents

Title Page
Copyright and Credits
Hands-On Mobile and Embedded Development with Qt 5
Dedication
About Packt
Why subscribe?
Packt.com
Foreword
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
Section 1: Making Great UIs
Standard Qt Widgets
Hello mobile!
Qt Creator
Basic Qt Creator procedure
Qt Designer
Add a QMenu
Add QListView
Going smaller, handling screen sizes
Screen resolution
Memory and storage
Orientation
Gestures
Dynamic layouts
Graphics view
Summary
Fluid UI with Qt Quick
Qt Quick basics – anything goes
QML
Components
Dynamic binding
Signal connections
Model-view programming
GridView
ListView
PathView
TreeView
Gestures and touch
PinchArea
MultiPointTouchArea
Positioning
Layouts
Rigid layouts
Dynamic layout
Anchors
Qt Quick Controls 2 button, button, who’s got the button?
Customizing
Show your data – Qt Data Visualization and Qt Charts
Qt Charts
Qt Data Visualization
Animate it!
Transitions
Animation
PropertyAnimation
NumberAnimation
SequentialAnimation
ParallelAnimation
SpringAnimation
Easing
SceneGraph
Summary
Graphical and Special Effects
The universe of particles
ParticleSystem
Particle painters, emitters, and affectors
Affectors
Shapes and directions
Graphical effects for Qt Quick
DropShadow
Glow
Gradient
Blur
Summary
Input and Touch
What to do when there’s no keyboard
Using touch input
QEvent
Event filter
Event loop
Touchscreen support
Windows, iOS and Android
Linux
evdev
libevdev 
libinput 
Tslib
Using the touchscreen
MultiPointTouchArea
Qt Gestures
Voice as input
QtAlexaAuto
Summary
Section 2: Networking, Connectivity, Sensors, and Automation
Qt Network for Communication
High level – request, reply, and access
QNetworkRequest
QNetworkAccessManager
QNetworkReply
QFtp
Bearer Management of good news
QNetworkConfiguration
QNetworkConfiguration::BearerType
QNetworkConfiguration::StateFlags
QNetworkConfigurationManager
QNetworkSession
Roaming
QBearerEngine
Low level – of sockets and servers
QLocalServer
QLocalSocket
QTcpServer
QTcpSocket
QSctpServer
QSctpSocket
QUdpSocket
QSslSocket
QSslServer
Lookups – look me up
QHostInfo
QDnsLookup
Summary
Connectivity with Qt Bluetooth LE
What is Bluetooth Low Energy?
Implementing a BLE GATT server
QLowEnergyAdvertisingData
QLowEnergyCharacteristicData
QLowEnergyServiceData
Discovery and Pair-ity – search and connect for BLE devices
QBluetoothDeviceDiscoveryAgent
 QBluetoothLocalDevice
Specifying and getting client data
QLowEnergyController
QLowEnergyService
QLowEnergyCharacteristic
QLowEnergyDescriptor
Bluetooth QML
BluetoothDiscoveryModel
BluetoothService
BluetoothSocket
Summary
Machines Talking
Sensory control – QtSensor data
QSensor
The QSensor subclass
QSensorFilter
QSensor data
QSensorReading
QML sensors
Custom QSensor and the backend engine
Custom QSensor
Custom QSensorBackend
Sensors.conf
QSensorGesture
QSensorGestureManager
SensorGesture
WebSockets – Bi-directional web communication
QWebSocketServer
QWebSocket
Client
QtQuick
WebSocketServer
WebSocket
QMqtt – Brokers of machine talk
QMqttClient
Putting it all together
Summary
Where Am I? Location and Positioning
Positioning with satellites
QGeoSatelliteInfoSource
QGeoSatelliteInfo
QGeoPositionInfoSource
QGeoPositionInfo
QGeoCoordinate
Qt Quick
Mapping the positions
Map
MapCircle
PluginParameter
RouteModel
Places of interest
Summary
Section 3: Other APIs Qt SQL, Qt Multimedia, and Qt Purchasing
Sounds and Visions – Qt Multimedia
Sonic vibrations – audio
Qt.vector3d
AudioEngine
AudioSample
Sound
AudioListener
SoundInstance
Audio
QAudioRecorder
QMediaPlayer
QAudioOutput
Image sensors – camera
QCameraInfo
Camera
VideoOutput
Visual media – playing video
Tuning it in – FM radio tuner
Summary
Remote Databases with Qt SQL
Technical requirements
Drivers are database backends
Setup
The MySQL server
SQLite
Connecting to a local or remote database
QSqlDatabase
Creating and opening a database
Adding data to the database
Executing queries
QSqlQuery
QSqlQueryModel
Summary
Enabling In-App Purchases with Qt Purchasing
Registering on Android Google Play
Registering on iOS App Store
Creating an in-app product
Store
Product
Transaction
Restoring purchases
Summary
Section 4: Mobile Deployment and Device Creation
Cross Compiling and Remote Debugging
Cross compiling
Traditional cross tools
DIY toolchain
Buildroot
Crosstool-NG
Prebuilt tools
Boot to Qt
Cross toolchains on Windows
Sysprogs
Windows Subsystem for Linux
Mobile platform-specific tools
iOS
Android
QNX
Connecting to a remote device
Qt Creator
Generic Linux
Android
iOS
Bare metal
Debuggi
ng remotely
gdbserver
Qt Creator
Summary
Deploying to Mobile and Embedded
Deployment for Android
The package
androiddeployqt
Qt Creator
Test track
Internal tests
Deployment for iOS
The package
Qt Creator
Xcode
Alternative OSes
Sailfish OS
UBports
Clickable
Embedded Linux
OS deployment
App deployment
Summary
Universal Platform for Mobiles and Embedded Devices
What is this WebAssembly thing?
Technical requirements
Getting started
Download Emscripten
Building an Emscripten SDK manually
Technical requirements
Configuring and compiling Qt
Building with the command line
Building with Qt Creator
The Build environment
The Run environment
Deploying for mobile and embedded devices
Tips, tricks, and suggestions
Browsers
Debugging
Networking
Fonts and filesystem access
OpenGL
Supported Qt modules
Other caveats
Summary
Building a Linux System
Bootcamp – Boot to Qt
Rolling your own – custom embedded Linux
System customization
local.conf file
meta-<layer> directories
<recipe>.bb files
devtool command
recipetool command
bitbake-layers
yocto-layer
bbappend files
Deploying to an embedded system
OpenEmbedded
Raspberry Pi
Summary
Other Books You May Enjoy
Leave a review – let other readers know what you think


Is Hands-On Mobile and Embedded Development with Qt 5 Free to Download?

No, i'm afraid not. Every single book that we feature on Allbooks.co is a paid-for, premium publication that you have to part your hard earned cash for. There is no point trying to find a free download of Hands-On Mobile and Embedded Development with Qt 5 so please don't waste your time looking. Head over to Amazon to buy a physical or digital copy of Hands-On Mobile and Embedded Development with Qt 5. You can also buy a subscription from Perlego and gain access to over 500k textbooks and educational resources.

It is highly unlikely that you'll be able to find Hands-On Mobile and Embedded Development with Qt 5 for free. There's a lot of websites that will say "Free Download" but these are just attempts to get you to click on a link which will either take you to an ad landing page or you risk getting viruses on your computer. In the rare occasion that you do find a free download for Hands-On Mobile and Embedded Development with Qt 5 remember that it's illegal to download a book if you didn't pay for it!

If you really want Hands-On Mobile and Embedded Development with Qt 5 and you want to truly own it the legal and safe way, then click here to visit the download and purchase page on Amazon.com. The author and publisher deserves to be paid for their work, as they have put in the hours and the creativity to produce such an amazing publication / book.