رفتن به مطلب
مرجع رسمی سی‌پلاس‌پلاس ایران
  • 0
androidWithQt

فایربیس در کیوت


سوال

سلام من سعی داشتم فایربیس رو روی کیوت انجام بدم ولی نشد.من مراحل زیر رو انجام دادم ولی هرچی تلاش می کنم به نتیجه نمی رسم
در سایت console.firebase.google.com ثبت نام کردم و یک پروژه ایجاد کردم و فایل json رو به قسمت اندروید پروژه اضافه کردم.
خطوط زیر رو به .pro اضافه کردم

QTFIREBASE_CONFIG += analytics messaging auth

# Includes QtFirebase:
include(./extensions/QtFirebase/qtfirebase.pri)
QTFIREBASE_SDK_PATH = C:/firebase_cpp_sdk


خطوط زیر رو به  build.gradle اضافه کردم:
   dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0'
               classpath 'com.google.gms:google-services:4.2.0'
    }


project.ext {
    // Configure the Firebase C++ SDK location.
    firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir')
    firebaseSdkUsed = 'system property firebase_cpp_sdk.dir'

    if (firebase_cpp_sdk_dir == null || firebase_cpp_sdk_dir.isEmpty()) {
        firebase_cpp_sdk_dir = System.getenv('FIREBASE_CPP_SDK_DIR')
        firebaseSdkUsed = 'system env variable FIREBASE_CPP_SDK_DIR'
        if (firebase_cpp_sdk_dir == null || firebase_cpp_sdk_dir.isEmpty()) {
            if ((new File('firebase_cpp_sdk')).exists()) {
                firebase_cpp_sdk_dir = 'firebase_cpp_sdk'
            } else {
                throw new StopActionException(
                    'firebase_cpp_sdk.dir property or the FIREBASE_CPP_SDK_DIR ' +
                    'environment variable must be set to reference the Firebase C++ ' +
                    'SDK install directory.  This is used to configure static library ' +
                    'and C/C++ include paths for the SDK.'
                )
            }
        }
    }

    if (!(new File(firebase_cpp_sdk_dir)).exists()) {
        throw new StopActionException(
            sprintf('Firebase C++ SDK directory %s does not exist', firebase_cpp_sdk_dir)
        )
    }
    println 'QtFirebase using Firebase C++ SDK located in ' + firebase_cpp_sdk_dir + ' (from ' + firebaseSdkUsed + ')'

    // Check the NDK location using the same configuration options as the
    // experimental Gradle plug-in.
    def ndkDir = android.ndkDirectory
    ndkUsed = 'android.ndkDirectory'

    if (ndkDir == null || !ndkDir.exists()) {
        ndkDir = new File(System.getProperty('ndk_dir'))
        ndkUsed = 'system property ndk_dir'
    }
    if (ndkDir == null || !ndkDir.exists()) {
        ndkDir = new File(System.getenv('ANDROID_NDK_HOME'))
        ndkUsed = 'system env variable ANDROID_NDK_HOME'
    }
    if (ndkDir == null || !ndkDir.exists()) {
        throw new StopActionException(
            'Android NDK directory should be specified using the ndkDir ' +
            'property or ANDROID_NDK_HOME environment variable.'
        )
    }
    println 'QtFirebase (Firebase C++ SDK) using Android NDK located in ' + ndkDir + ' (from ' + ndkUsed + ')'
}

repositories {
    flatDir {
        dirs project.ext.firebase_cpp_sdk_dir + "/libs/android"
    }
}


dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar'])
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:multidex:1.0.3'
    implementation 'com.google.android.gms:play-services-places:16.0.0'
    implementation 'com.google.android.gms:play-services-maps:16.0.0'
    implementation 'com.google.android.gms:play-services-base:16.1.0'
    implementation 'com.google.firebase:firebase-core:16.0.7'
    implementation 'com.google.firebase.messaging.cpp:firebase_messaging_cpp@aar'
    implementation 'com.google.firebase:firebase-messaging:17.4.0'
}

apply plugin: 'com.google.gms.google-services'
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

خط زیر رو به gradle.properties :
systemProp.firebase_cpp_sdk.dir=C:/firebase_cpp_sdk
در اخر هم خط زیر رو به main.qml :
import QtFirebase 1.0
من میدونم روی گیت هاب یک پروژه هست ولی برای کامپایل اندروید ارور میده و دستکاپش هم که بدرد نمی خوره.

پیشاپیش ممنون

ویرایش شده در توسط کامبیز اسدزاده
ویرایش استایل

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

2 پاسخ به این سوال تا کنون داده شده است

پست های پیشنهاد شده

  • 0

ممنون از جوابتون

ولی من باید حتما از فایربیس استفاده کنم چون بک اند اینجوری پیاده سازی شده.

فقط برای ورود و یکی دو قسمت رجیستر نیاز به فیلتر شکن هست ولی برای نوتیف امدن و cloudemessaging برای اپ مشکلی نیست فیلترشکن لازم نداره

ممنون میشم اگر کسی میتونه کمک کنه

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0

سلام روزتون بخیر

 

من از firebase در پلت فرم های اندروید و ios با استفاده از کیوت استفاده کردم. و تا حالا مشکلی هم نداشتم باهاش اما پنل تحت وبش نیاز به vpn داره.

اگه فرصت بشه حتما یه نمونه ازش می زارم تو گیت که دوستان استفاده کنن.

 

به اشتراک گذاری این ارسال


لینک به ارسال
به اشتراک گذاری در سایت های دیگر

به گفتگو ملحق شوید

شما همین الآن می‌توانید مطلبی را ارسال و بعداً ثبت‌نام کنید. اگر حساب کاربری دارید، و با حساب کاربری خود مطلب ارسال کنید.
نکته: مطلب شما قبل از انتشار نیاز به بازبینی توسط میانجی‌گر‌ها دارد.

مهمان
پاسخ به این سوال ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.


  • کاربران آنلاین در این صفحه   0 کاربر

    هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.

×
×
  • جدید...