اذهب إلى المحتوى
  • 0

كيف ممكن الوصول الى قيمة في كلاس مختلف flutter

Flutter Dev

السؤال

قمت بعمل كلاس منفصل لوضع كود الاعلان بداخله كتالتالي:

import 'package:firebase_admob/firebase_admob.dart';

import 'helper.dart';



//const String testDevice = 'YOUR_DEVICE_ID';

class AdsRewardedVideoAd {
  static bool _loaded = false;
  static int coins = 0;

  static RewardedVideoAd videoAd = RewardedVideoAd.instance;

  static void initialize() {
    FirebaseAdMob.instance.initialize(appId: AdManager.appId);
  }

  static MobileAdTargetingInfo targetingInfo = MobileAdTargetingInfo(
    keywords: <String>['flutterio', 'beautiful apps'],
    testDevices: <String>[], // Android emulators are considered test devices
  );

  static RewardedVideoAd createRewardedVideoAd() {

     videoAd.load(adUnitId: AdManager.rewardedAdUnitId, targetingInfo: targetingInfo);

     RewardedVideoAd.instance.listener = (RewardedVideoAdEvent event, {String rewardType, int rewardAmount}) {
       if(event == RewardedVideoAdEvent.rewarded) {

           coins+=rewardAmount;
           
           print('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx $coins');

       }
     };

  }

  static void showRewardedVideoAd() {
    if (videoAd == null) videoAd = createRewardedVideoAd();

    videoAd .show().catchError((e) =>
        print("error in showing ad: ${e.toString()}"));

  }


}

وبعدها قمت باستدعاء الكلاس في الصفحة المستهدفة كالتالي:

 AdsRewardedVideoAd.showRewardedVideoAd();

ولكني واجهة مشكلة احتاج الى الاستعلام عن قيمة coins التي تتغير في الكلاس createRewardedVideoAd() في الصفحة الاولى

من خلال الصفحة الثانية التي وضعت فيها كود العمل هذا :

 AdsRewardedVideoAd.showRewardedVideoAd();

كيف ممكن الوصول الى قيمته بعد ان تتغير من الصفحة الثانية او الصفحة المستهدفة ؟ هل توجد طريقة لعمل ذلك؟

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 1

هناك عدة طرق مستخدمة.

  • ممكن تحفظ القيمة عن طريق SharedPrefrence وتجلب قيمة المفتاح. 
  • يمكن عن طريق LocalStorage و أيضا يمكن جلب القيمة من المفتاح المخزن.
  • أو عن طريق تنفيذ Setter , Getter ويمكن عن طريق الكود التالي. 

يمكن تعريف getter 

int get coinsValue {
	return coins;
}

أو بشكل مختصر 

int get coinsValue => coins;

 ويمكن جلبها عن طريق الكلاس

AdsRewardedVideoAd.coinsValue

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...