mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-01-30 09:13:40 -05:00
987b5a1cdc
The crash was introduced at 533dbef0c79b37b6c50c9176235d2e5d0193918b This has been particurarly tricky as lot of different parts contributed in causing unexpected behaviours When the activity is created onNewIntent is not called and we have to get the intent data from C++ bu other means, but C++ code is running in a different thread so there is no guarantee that the intent data is reacheable yet on starting, so the C++ code has to wait for the intent data being ready, but paying attention to not cause a deadlock beetween the two thread (the android ui thread may be waiting for some operation performed by Qt) Because of notification intent flags not properly set the activity was recreated also if it was already on top, this caused a nasty interaction between android ui thread and qt thread that derived in a deadlock, to avoid this lot of try/error has been made until the proper soup of manifest and intent flags has been found At this point link handling, notification handling, and Activity closing should work as expected without any deadlock or crash
45 lines
1.1 KiB
Prolog
45 lines
1.1 KiB
Prolog
!include("../../retroshare.pri"): error("Could not include file ../../retroshare.pri")
|
|
|
|
QT += core network qml quick
|
|
|
|
CONFIG += c++11
|
|
|
|
HEADERS += libresapilocalclient.h \
|
|
rsqmlappengine.h
|
|
SOURCES += main-app.cpp \
|
|
libresapilocalclient.cpp \
|
|
rsqmlappengine.cpp
|
|
|
|
RESOURCES += qml.qrc
|
|
|
|
android-g++ {
|
|
QT += androidextras
|
|
SOURCES += NativeCalls.cpp
|
|
HEADERS += NativeCalls.h
|
|
}
|
|
|
|
# Additional import path used to resolve QML modules in Qt Creator's code model
|
|
#QML_IMPORT_PATH =
|
|
#QML2_IMPORT_PATH =
|
|
|
|
|
|
# Default rules for deployment.
|
|
include(deployment.pri)
|
|
|
|
DISTFILES += \
|
|
android/AndroidManifest.xml \
|
|
android/gradle/wrapper/gradle-wrapper.jar \
|
|
android/gradlew \
|
|
android/res/values/libs.xml \
|
|
android/build.gradle \
|
|
android/gradle/wrapper/gradle-wrapper.properties \
|
|
android/gradlew.bat \
|
|
icons/retroshare06.png
|
|
|
|
ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android
|
|
|
|
DEPENDPATH *= ../../libretroshare/src
|
|
INCLUDEPATH *= ../../libretroshare/src
|
|
PRE_TARGETDEPS *= ../../libretroshare/src/lib/libretroshare.a
|
|
LIBS *= ../../libretroshare/src/lib/libretroshare.a
|