diff options
author | Liang Qi <liang.qi@qt.io> | 2016-05-24 20:01:40 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@qt.io> | 2016-05-24 20:01:40 +0200 |
commit | 63b8d2ee2b6cc59df56562c248a51e8b101887a8 (patch) | |
tree | e1a541c7933b7b05d4cf74c5565da2b9aa2c09df | |
parent | ab68e45721b4b1534174d355063ad22564645635 (diff) | |
parent | 776b1cb7646f01eb200896f49fa85eb9f9402aac (diff) |
Merge remote-tracking branch 'origin/5.7' into dev
Change-Id: I8d1e5103376a8502a0db5b1414f1ec8a195659a3
-rw-r--r-- | examples/purchasing/qthangman/qthangman.pro | 3 | ||||
-rw-r--r-- | src/android/jar.pri | 6 | ||||
-rw-r--r-- | src/imports/purchasing/purchasing.pro | 4 | ||||
-rw-r--r-- | src/purchasing/doc/qtpurchasing.qdocconf | 2 | ||||
-rw-r--r-- | src/purchasing/inapppurchase/android/qandroidinapppurchasebackend.cpp | 19 | ||||
-rw-r--r-- | src/purchasing/inapppurchase/mac/qmacinapppurchasetransaction.mm | 2 | ||||
-rw-r--r-- | src/purchasing/purchasing.pro | 4 |
7 files changed, 24 insertions, 16 deletions
diff --git a/examples/purchasing/qthangman/qthangman.pro b/examples/purchasing/qthangman/qthangman.pro index 96b87e9..1cd0aec 100644 --- a/examples/purchasing/qthangman/qthangman.pro +++ b/examples/purchasing/qthangman/qthangman.pro @@ -12,6 +12,9 @@ RESOURCES += \ QT += purchasing +target.path = $$[QT_INSTALL_EXAMPLES]/purchasing/qthangman +INSTALLS += target + OTHER_FILES += \ qml/qthangman/GameView.qml \ qml/qthangman/GuessWordView.qml \ diff --git a/src/android/jar.pri b/src/android/jar.pri index 9edcef9..4039dc1 100644 --- a/src/android/jar.pri +++ b/src/android/jar.pri @@ -1,4 +1,6 @@ CONFIG += java +load(sdk) + DESTDIR = $$[QT_INSTALL_PREFIX/get]/jar PATHPREFIX = $$PWD/src/org/qtproject/qt5/android/purchasing/ @@ -18,10 +20,6 @@ PATHPREFIX = $$PWD/src/org/qtproject/qt5/android/purchasing/ } } - API_VERSION_TO_USE = $$(ANDROID_API_VERSION) - isEmpty(API_VERSION_TO_USE): API_VERSION_TO_USE = $$API_VERSION - isEmpty(API_VERSION_TO_USE): API_VERSION_TO_USE = android-10 - FRAMEWORK_AIDL_FILE = $$SDK_ROOT/platforms/$$API_VERSION_TO_USE/framework.aidl !exists($$FRAMEWORK_AIDL_FILE) { error("The Path $$FRAMEWORK_AIDL_FILE does not exist. Make sure the ANDROID_SDK_ROOT and ANDROID_API_VERSION environment variables are correctly set.") diff --git a/src/imports/purchasing/purchasing.pro b/src/imports/purchasing/purchasing.pro index e9440e4..2f49773 100644 --- a/src/imports/purchasing/purchasing.pro +++ b/src/imports/purchasing/purchasing.pro @@ -9,8 +9,6 @@ SOURCES += \ $$PWD/qinappproductqmltype.cpp \ $$PWD/qinappstoreqmltype.cpp -load(qml_plugin) - win32 { CONFIG += skip_target_version_ext VERSION = $$MODULE_VERSION @@ -23,3 +21,5 @@ HEADERS += \ $$PWD/qinappstoreqmltype_p.h OTHER_FILES += qmldir + +load(qml_plugin) diff --git a/src/purchasing/doc/qtpurchasing.qdocconf b/src/purchasing/doc/qtpurchasing.qdocconf index 6c5f364..35b9564 100644 --- a/src/purchasing/doc/qtpurchasing.qdocconf +++ b/src/purchasing/doc/qtpurchasing.qdocconf @@ -47,7 +47,7 @@ exampledirs += \ imagedirs += images -examplesinstallpath = qtpurchasing/purchasing +examplesinstallpath = purchasing Cpp.ignoretokens += Q_PURCHASING_EXPORT diff --git a/src/purchasing/inapppurchase/android/qandroidinapppurchasebackend.cpp b/src/purchasing/inapppurchase/android/qandroidinapppurchasebackend.cpp index 87c044d..0a0a5d1 100644 --- a/src/purchasing/inapppurchase/android/qandroidinapppurchasebackend.cpp +++ b/src/purchasing/inapppurchase/android/qandroidinapppurchasebackend.cpp @@ -41,7 +41,7 @@ QT_BEGIN_NAMESPACE -#define QANDROIDINAPPPURCHASEBACKEND_DEBUG +// #define QANDROIDINAPPPURCHASEBACKEND_DEBUG QAndroidInAppPurchaseBackend::QAndroidInAppPurchaseBackend(QObject *parent) : QInAppPurchaseBackend(parent) @@ -118,10 +118,7 @@ void QAndroidInAppPurchaseBackend::queryProducts(const QList<Product> &products) QMutexLocker locker(&m_mutex); QAndroidJniEnvironment environment; - jclass cls = environment->FindClass("java/lang/String"); - jobjectArray productIds = environment->NewObjectArray(products.size(), cls, 0); - environment->DeleteLocalRef(cls); - + QStringList newProducts; for (int i = 0; i < products.size(); ++i) { const Product &product = products.at(i); if (m_productTypeForPendingId.contains(product.identifier)) { @@ -130,8 +127,18 @@ void QAndroidInAppPurchaseBackend::queryProducts(const QList<Product> &products) } m_productTypeForPendingId[product.identifier] = product.productType; + newProducts.append(product.identifier); + } + + if (newProducts.isEmpty()) + return; + + jclass cls = environment->FindClass("java/lang/String"); + jobjectArray productIds = environment->NewObjectArray(newProducts.size(), cls, 0); + environment->DeleteLocalRef(cls); - QAndroidJniObject identifier = QAndroidJniObject::fromString(product.identifier); + for (int i = 0; i < newProducts.size(); ++i) { + QAndroidJniObject identifier = QAndroidJniObject::fromString(newProducts.at(i)); environment->SetObjectArrayElement(productIds, i, identifier.object()); } diff --git a/src/purchasing/inapppurchase/mac/qmacinapppurchasetransaction.mm b/src/purchasing/inapppurchase/mac/qmacinapppurchasetransaction.mm index 0c51550..c61b406 100644 --- a/src/purchasing/inapppurchase/mac/qmacinapppurchasetransaction.mm +++ b/src/purchasing/inapppurchase/mac/qmacinapppurchasetransaction.mm @@ -64,7 +64,7 @@ QMacInAppPurchaseTransaction::QMacInAppPurchaseTransaction(SKPaymentTransaction #endif case SKErrorUnknown: default: - m_errorString = QStringLiteral("Unknown"); + m_errorString = QString::fromNSString([m_nativeTransaction.error localizedDescription]); } } } diff --git a/src/purchasing/purchasing.pro b/src/purchasing/purchasing.pro index 8fdc2d2..56a2cf2 100644 --- a/src/purchasing/purchasing.pro +++ b/src/purchasing/purchasing.pro @@ -1,8 +1,6 @@ TARGET = QtPurchasing QT = core -load(qt_module) - QMAKE_TARGET_PRODUCT = "Qt Purchasing (Qt $$QT_VERSION)" QMAKE_TARGET_DESCRIPTION = "Purchasing component for Qt." @@ -17,3 +15,5 @@ HEADERS += \ $$PWD/qtpurchasingglobal.h include(inapppurchase/inapppurchase.pri) + +load(qt_module) |