हमारा सुझाव है कि आप CMake का इस्तेमाल करें.हालांकि, libfirebase_app.a
अपने प्रोजेक्ट की gradle.properties
फ़ाइल में, अनज़िप किए गए SDK
के स्थान बताएं:
systemProp.firebase_cpp_sdk.dir=full-path-to-SDK
अपने प्रोजेक्ट की settings.gradle
फ़ाइल में, यह कॉन्टेंट जोड़ें:
def firebase_cpp_sdk_dir = System.getProperty('firebase_cpp_sdk.dir')
gradle.ext.firebase_cpp_sdk_dir = "$firebase_cpp_sdk_dir"
includeBuild "$firebase_cpp_sdk_dir"
अपने मॉड्यूल (ऐप्लिकेशन-लेवल) पर Gradle फ़ाइल (आम तौर पर, app/build.gradle
) में
यह कॉन्टेंट जोड़ें. इसमें Google Mobile Ads C++ SDK टूल का लाइब्रेरी डिपेंडेंसी भी शामिल है.
android.defaultConfig.externalNativeBuild.cmake {
arguments "-DFIREBASE_CPP_SDK_DIR=$gradle.firebase_cpp_sdk_dir"
}
# Add the dependency for the Google Mobile Ads C++ SDK
apply from: "$gradle.firebase_cpp_sdk_dir/Android/firebase_dependencies.gradle"
firebaseCpp.dependencies {
gma
}
अपने प्रोजेक्ट की CMakeLists.txt
फ़ाइल में, यह कॉन्टेंट जोड़ें.
# Add Firebase libraries to the target using the function from the SDK.
add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
# Add the Google Mobile Ads C++ SDK.
# The Firebase C++ library `firebase_app` is required,
# and it must always be listed last.
set(firebase_libs
firebase_gma
firebase_app
)
target_link_libraries(${target_name} "${firebase_libs}")
यह पक्का करने के लिए अपने ऐप्लिकेशन को सिंक करें कि सभी डिपेंडेंसी के पास ज़रूरी वर्शन हैं.
आप बिलकुल तैयार हैं! आपका C++ ऐप्लिकेशन इस तरह से कॉन्फ़िगर किया जाता है कि किसी दूसरी Firebase सेवा के बिना, Google मोबाइल विज्ञापन C++ SDK टूल का इस्तेमाल कर सकता है.
iOS
इस सेक्शन में बताया गया तरीका अपनाकर, आप अपने iOS प्रोजेक्ट में Google मोबाइल विज्ञापन C++ SDK टूल कैसे जोड़ सकते हैं.
इन चरणों को चलाकर CocoaPods का वर्शन 1 या उसके बाद का वर्शन पाएं:
sudo gem install cocoapods --pre
अनज़िप हुए SDK टूल से Google मोबाइल विज्ञापन पॉड जोड़ें.
अगर आपके पास पहले से कोई Podfile नहीं है, तो एक बनाएं:
cd your-app-directory
pod init
अपने Podfile में, Google मोबाइल विज्ञापन C++ SDK टूल के लिए पॉड जोड़ें:
pod 'Google-Mobile-Ads-SDK'
पॉड इंस्टॉल करें, फिर .xcworkspace
फ़ाइल को Xcode में खोलें.
pod install
open your-app.xcworkspace
Firebase C++ SDK टूल से प्रोजेक्ट में ये फ़्रेमवर्क जोड़ें:
xcframeworks/firebase.xcframework
xcframeworks/firebase_gma.xcframework
आप बिलकुल तैयार हैं! आपका C++ ऐप्लिकेशन इस तरह से कॉन्फ़िगर किया जाता है कि किसी दूसरी Firebase सेवा के बिना, Google मोबाइल विज्ञापन C++ SDK टूल का इस्तेमाल कर सकता है.
Android
मोबाइल विज्ञापन SDK टूल
Android गाइड के मुताबिक अपने ऐप्लिकेशन को कॉन्फ़िगर करें के तीसरे चरण को फ़ॉलो करें और फिर इस C++ के शुरुआती पेज पर वापस जाएं.
ध्यान दें: आपको सिर्फ़ AndroidManifest.xml
फ़ाइल में बदलाव करने चाहिए. आपको गाइड में दिए गए पहले और दूसरे चरण को अनदेखा करना चाहिए.
iOS
मोबाइल विज्ञापन SDK टूल iOS गाइड में बताए गए तरीके के मुताबिक, Infoinfo.plist को अपडेट करें पर जाएं. इसके बाद, शुरू करने के लिए इस C++ पेज पर वापस जाएं.
Google मोबाइल विज्ञापन SDK शुरू करें
विज्ञापन लोड होने से पहले, अपने ऐप्लिकेशन से Google मोबाइल विज्ञापन C++ SDK टूल को शुरू करने के लिए कहें. इसके लिए, firebase::gma::Initialize()
को कॉल करें. यह SDK टूल को शुरू करता है और शुरू होने के बाद (या 30 सेकंड के टाइम आउट के बाद) firebase::Future
को पूरा करता है. ऐसा आपको सिर्फ़ एक बार करना होगा, खास तौर पर ऐप्लिकेशन लॉन्च के समय.
Initialize()
को कॉल करने पर, विज्ञापन Google मोबाइल विज्ञापन C++ SDK या मीडिएशन पार्टनर SDK टूल से पहले से लोड किए जा सकते हैं. अगर आपको यूरोपियन इकनॉमिक एरिया (ईईए) के उपयोगकर्ताओं से सहमति लेनी है, तो अलग-अलग अनुरोधों के हिसाब से फ़्लैग (जैसे कि tag_for_child_directed_treatment
या tag_for_under_age_of_consent
) सेट करें या विज्ञापन लोड करने से पहले कार्रवाई करें. ऐसे में, Google Mobile Ads C++ SDK टूल को शुरू करने से पहले, firebase::gma::SetRequestConfiguration()
का अनुरोध करें. ज़्यादा जानकारी के लिए, हमारी
टारगेटिंग गाइड देखें.
Initialize()
को कॉल करने का उदाहरण यहां दिया गया है:
Android
// Initialize the Google Mobile Ads library
firebase::InitResult result;
Future<AdapterInitializationStatus> future =
firebase::gma::Initialize(jni_env, j_activity, &result);
if (result != kInitResultSuccess) {
// Initialization immediately failed, most likely due to a missing dependency.
// Check the device logs for more information.
return;
}
// Monitor the status of the future.
// See "Use a Future to monitor the completion status of a method call" below.
if (future.status() == firebase::kFutureStatusComplete &&
future.error() == firebase::gma::kAdErrorCodeNone) {
// Initialization completed.
} else {
// Initialization on-going, or an error has occurred.
}
iOS
// Initialize the Google Mobile Ads library.
firebase::InitResult result;
Future<AdapterInitializationStatus> future =
firebase::gma::Initialize(&result);
if (result != kInitResultSuccess) {
// Initialization immediately failed, most likely due to a missing dependency.
// Check the device logs for more information.
return;
}
// Monitor the status of the future.
// See "Use a Future to monitor the completion status of a method call" below.
if (future.status() == firebase::kFutureStatusComplete &&
future.error() == firebase::gma::kAdErrorCodeNone) {
// Initialization completed.
} else {
// Initialization on-going, or an error has occurred.
}
किसी मैथड कॉल के पूरा होने की स्थिति पर नज़र रखने के लिए, Future
का इस्तेमाल करें
Future
की मदद से, आपको एसिंक्रोनस तरीके से
कॉल की स्थिति के बारे में पता चलता है.
उदाहरण के लिए, जब आपका ऐप्लिकेशन firebase::gma::Initialize()
को कॉल करता है, तो एक नया
firebase::Future
बनाया जाता है और उसे दिखाया जाता है. इसके बाद, आपका ऐप्लिकेशन Future
के
status()
को पोल कर सकता है, ताकि यह तय किया जा सके कि यह प्रोसेस कब शुरू हुई है.
सेट अप हो जाने पर, आपका ऐप्लिकेशन result()
को खोलकर,
AdapterInitializationStatus
के नतीजे का इस्तेमाल कर सकता है.
किसी विधि के लिए Future
लौटाने की विधियों में एक संबंधित "अंतिम परिणाम" विधि होती है
जिसका उपयोग करके कोई दी गई कार्रवाई के लिए ऐप्स सबसे हाल के Future
को पुनर्प्राप्त करते हैं. उदाहरण के लिए, firebase::gma::Initialize()
के पास firebase::gma::InitializeLastResult()
नाम का एक तरीका है, जो Future
दिखाता है. इस तरीके का इस्तेमाल करके आपका ऐप्लिकेशन firebase::gma::Initialize()
पर किए गए आखिरी कॉल की स्थिति देख सकता है.
अगर Future
का स्टेटस पूरा हो गया है और उसका गड़बड़ी कोड
firebase::gma::kAdErrorCodeNone
है, तो इसका मतलब है कि कार्रवाई पूरी हो गई है.
Future
पूरा होने पर, कॉलबैक को शुरू किया जा सकता है. कुछ मामलों में, कॉलबैक एक अलग थ्रेड में चलेगा, इसलिए पक्का करें कि आपका कोड थ्रेड-सुरक्षित हो. यह कोड स्निपेट, कॉलबैक के लिए फ़ंक्शन पॉइंटर का इस्तेमाल करता है:
// Registers the OnCompletion callback. user_data is a pointer that is passed verbatim
// to the callback as a void*. This allows you to pass any custom data to the callback
// handler. In this case, the app has no data, so you must pass nullptr.
firebase::gma::InitializeLastResult().OnCompletion(OnCompletionCallback,
/*user_data=*/nullptr);
// The OnCompletion callback function.
static void OnCompletionCallback(
const firebase::Future<AdapterInitializationStatus>& future, void* user_data) {
// Called when the Future is completed for the last call to firebase::gma::Initialize().
// If the error code is firebase::gma::kAdErrorCodeNone,
// then the SDK has been successfully initialized.
if (future.error() == firebase::gma::kAdErrorCodeNone) {
// success!
} else {
// failure.
}
}
Google मोबाइल विज्ञापन C++ SDK टूल अब इंपोर्ट हो गया है और आप विज्ञापन लागू करने के लिए तैयार हैं. AdMob कई अलग-अलग विज्ञापन फ़ॉर्मैट उपलब्ध कराता है, ताकि आप
अपने ऐप्लिकेशन के उपयोगकर्ता अनुभव के हिसाब से सबसे सही फ़ॉर्मैट चुन सकें.
बैनर
डिवाइस की स्क्रीन के सबसे ऊपर या नीचे दिखने वाले आयताकार विज्ञापन.
जब उपयोगकर्ता ऐप्लिकेशन के साथ इंटरैक्ट करते हैं, तब बैनर विज्ञापन स्क्रीन पर दिखते रहते हैं और एक
खास अवधि के बाद अपने-आप रीफ़्रेश हो सकते हैं. अगर आपने हाल ही में मोबाइल पर विज्ञापन देना शुरू किया है, तो शुरू करने के लिए यह एक बेहतरीन विकल्प है.
बैनर विज्ञापन लागू करना
मध्यवर्ती
फ़ुल-स्क्रीन विज्ञापन, जो उपयोगकर्ता के बंद करने तक किसी ऐप्लिकेशन के इंटरफ़ेस को कवर करते हैं.
इनका सबसे अच्छा इस्तेमाल ऐप के चालू होने के दौरान, सामान्य तरीके से रुकने पर होता है, जैसे कि
गेम के लेवल के बीच में या टास्क पूरा होने के ठीक बाद.
पेज पर अचानक दिखने वाले विज्ञापनों को लागू करना
इनाम दिया गया
ऐसे विज्ञापन जो उपयोगकर्ताओं को छोटे वीडियो देखने और गेम खेलने देने वाले विज्ञापनों
और सर्वे से इंटरैक्ट करने के लिए इनाम देते हैं. इसका इस्तेमाल मुफ़्त में उपलब्ध ऐप्लिकेशन से कमाई करने के लिए किया जाता है.
इनाम वाले विज्ञापन लागू करना