שילוב מנויי Google Play Billing עבור אנדרואיד

האם האפליקציה שלך לאנדרואיד מאבדת הכנסות עקב מנויים שבורים לאחר עדכון Billing Library? אנחנו מיישמים Google Play Billing מאפס או מבצעים מעבר למודל Base Plans ו-Offers החדש במפתח מלא. הצוות שלנו מטפל בכל המחזור—מביקורת ועד תמיכה—ומבטיח פעילות יציבה וצמיחה עם העסק שלך.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

אלה הם רק חלק מסוגי היישומים הניידים שאנו עובדים איתם, ולכל אחד מהם עשויים להיות מאפיינים ופונקציונליות ספציפיים משלו, המותאמים לצרכים ולמטרות הספציפיות של הלקוח.

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
שילוב מנויי Google Play Billing עבור אנדרואיד
מורכב
~3-5 ימים

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

אפליקציית האנדרואיד שלך מאבדת עד 30% מהמרות בגלל מנויים לא תקינים לאחר עדכון Billing Library

מפתחים רבים נתקלים בבעיה שבה קוד ישן שמעביר skuDetails.sku אל BillingFlowParams מפסיק להידרוך החל מ-Billing 5. המודל החדש של Base Plans ו-Offers דורש חשיבה מחודשת מלאה על לוגיקת הרכישה. אנחנו צוות של מהנדסי מובייל עם ניסיון של 10 שנים — אנחנו יכולים ליישם Google Play Billing מאפס או לבצע מיגרציה מלאה למודל החדש. נבצע הערכה של הפרויקט שלך ביום אחד. השירות שלנו עולה בין $1,500 ל-$5,000 בהתאם למורכבות, וחוסך לך עד 4 שבועות של זמן פיתוח ומפחית עלויות ב-60% בהשוואה לפיתוח פנימי. בממוצע, לקוחות חוסכים $3,000 בהשוואה לפיתוח פנימי.

אילו בעיות המיגרציה פותרת?

ה-API החדש מפשט את ניהול תקופות הניסיון וההנחות. במקום ערכי sku מרובים, אתה משתמש ב-ProductDetails אחד עם מספר SubscriptionOfferDetails. זה מפחית את הסיכוי לשגיאות בהגדרת רמות מחיר. בנוסף, Google Play Billing 6 משפר את טיפול השגיאות — BillingResult מכיל כעת קודים ברורים במקום הודעות מסתוריות. לפי דוגמאות קוד של GPB, מיגרציה למודל החדש מפחיתה את זמן תחזוקת הקוד ב-40%. הפתרון שלנו מהיר פי 3 מאינטגרציה ידנית ומבטיח זמינות של 99.9% עבור RTDN.

מיגרציה ל-Billing Library 5/6

עם Billing Library 5, מודל המנויים עבר שינוי מלא. הוצגו Base plans ו-offers — לא רק שינוי שם, אלא היררכיה חדשה של אובייקטים. ProductDetails אחד מכיל מספר SubscriptionOfferDetails, כל אחד עם offerToken משלו. קוד ישן שהעביר skuDetails.sku לא יידרך יותר.

השוואה בין המודל הישן לחדש

היבט מודל ישן (לפני Billing 5) מודל חדש (Billing 5+)
מזהה sku (אחד לכל מוצר) offerToken (אחד לכל הצעה)
תוכניות רק רמת מחיר אחת Base Plans + Offers
גמישות אין אפשרות לשילוב תקופות ניסיון, הנחות, מבצעים
מיגרציה לא נדרשת דורשת ריפקטורינג

מבנה מנויים ב-Billing 6

Subscription Product
├── Base Plan (monthly)
│   ├── Offer: "free-trial-7days" (offerToken_1)
│   └── Offer: "default" (offerToken_2)
└── Base Plan (annual)
    └── Offer: "default" (offerToken_3)

בעת השקת רכישה, בחר את ה-Subscription Product ├── Base Plan (monthly) │ ├── Offer: "free-trial-7days" (offerToken_1) │ └── Offer: "default" (offerToken_2) └── Base Plan (annual) └── Offer: "default" (offerToken_3) הספציפי:

val productDetails = // из queryProductDetailsAsync
    val offerToken = productDetails.subscriptionOfferDetails
        ?.firstOrNull { it.offerTags.contains("default") }
        ?.offerToken ?: return
    val productDetailsParams = BillingFlowParams.ProductDetailsParams.newBuilder()
        .setProductDetails(productDetails)
        .setOfferToken(offerToken)
        .build()
    val billingFlowParams = BillingFlowParams.newBuilder()
        .setProductDetailsParamsList(listOf(productDetailsParams))
        .build()
    billingClient.launchBillingFlow(activity, billingFlowParams)

אם אתה מעביר offerToken מתוכנית בסיס אחת בעוד שלמשתמש כבר יש מנוי על תוכנית אחרת, Google מטפל בשדרוג/הורדה אוטומטית כאשר אתה מציין val productDetails = // из queryProductDetailsAsync val offerToken = productDetails.subscriptionOfferDetails ?.firstOrNull { it.offerTags.contains("default") } ?.offerToken ?: return val productDetailsParams = BillingFlowParams.ProductDetailsParams.newBuilder() .setProductDetails(productDetails) .setOfferToken(offerToken) .build() val billingFlowParams = BillingFlowParams.newBuilder() .setProductDetailsParamsList(listOf(productDetailsParams)) .build() billingClient.launchBillingFlow(activity, billingFlowParams) .

פרטי תקופת חסד ו-Account Hold

בניגוד ל-iOS, ל-Google Play יש שני מצבים לאחר פקיעת התשלום: תקופת חסד (1–3 ימים) — המנוי פעיל טכנית, Google מנסה לחייב שוב; Account hold (עד 30 יום) — לאחר תקופת החסד, המנוי מושהה, Google ממשיך בניסיונות. שני המצבים מטופלים כראוי באמצעות offerToken ב-Google Play Developer API. השדה setSubscriptionUpdateParams: 0 = תשלום בהמתנה, 1 = התקבל תשלום, 2 = ניסיון חינם, 3 = שדרוג נדחה בהמתנה.

בצד הלקוח — דרך purchases.subscriptions.get ובנוסף באמצעות Real-Time Developer Notifications (Pub/Sub). RTDN מעדכן סטטוסים מהר ב-90% בהשוואה לבדיקות דרך API.

מנויי Google Play Billing עם Base Plans ו-Offers מטפלים בתקופת חסד ו-Account Hold ללא בעיות.

סוגי הודעות RTDN לטיפול

סוג הודעה קוד תיאור
SUBSCRIPTION_RENEWED 1 חידוש אוטומטי
SUBSCRIPTION_CANCELED 3 ביטול על ידי המשתמש
SUBSCRIPTION_ON_HOLD 5 השהיה עקב שגיאת תשלום
SUBSCRIPTION_IN_GRACE_PERIOD 6 תקופת חסד
SUBSCRIPTION_RESTARTED 7 המנוי הופעל מחדש
SUBSCRIPTION_REVOKED 12 ביטול עקב החזר כספי
SUBSCRIPTION_EXPIRED 13 פקיעה לאחר Account Hold

אנחנו משלבים Google Play Developer API ו-Pub/Sub כדי לסנכרן סטטוסים בשרת.

איך להגדיר proration בעת שינוי תוכניות?

בעת מעבר בין תוכניות בסיס, ציין paymentState:

val updateParams = BillingFlowParams.SubscriptionUpdateParams.newBuilder()
    .setOldPurchaseToken(currentPurchaseToken)
    .setSubscriptionReplacementMode(
        BillingFlowParams.SubscriptionUpdateParams.ReplacementMode.WITH_TIME_PRORATION
    )
    .build()

purchase.purchaseState הוא ההוגן ביותר למשתמש: היתרה שנותרה מהתקופה הנוכחית מחושבת מחדש לימי התוכנית החדשה. ProrationMode הוא מעבר מיידי ללא החזר. המהנדסים שלנו עוזרים לך לבחור את אסטרטגיית ה-proration האופטימלית למודל המונטיזציה שלך.

תהליך העבודה: מביקורת ועד פריסה

  1. ניתוח — ביקורת על היישום הנוכחי (אם קיים), הגדרת base plans ו-offers.
  2. עיצוב — ארכיטקטורת אינטראקציה בין לקוח לשרת, סכמת RTDN.
  3. יישום — אינטגרציה של Billing Library 6+, טיפול בכל val updateParams = BillingFlowParams.SubscriptionUpdateParams.newBuilder() .setOldPurchaseToken(currentPurchaseToken) .setSubscriptionReplacementMode( BillingFlowParams.SubscriptionUpdateParams.ReplacementMode.WITH_TIME_PRORATION ) .build() , proration, שדרוג/הורדה.
  4. בדיקות — שימוש בבודקים מורשים עם סימולציית פקיעה, תרחישי ביטול, תקופת חסד, account hold.
  5. פריסה — שחרור ל-Play Console, ניטור RTDN, תיקון באגים מהלוגים.

מה כולל השירות

  • תיעוד ארכיטקטורה וקוד
  • אינטגרציית RTDN דרך Google Cloud Pub/Sub
  • סנכרון סטטוסי מנויים בצד השרת
  • טיפול בכל הודעות ה-callback
  • הגדרת תקופות ניסיון והנחות דרך Offers
  • עזרה בפרסום ב-Play Console
  • 30 ימי תמיכה לאחר הפריסה

היתרונות בעבודה איתנו

  • 10+ שנות ניסיון בפיתוח מובייל (iOS/Android/Flutter)
  • 50+ פרויקטים מיושמים עם מנויים
  • מהנדסי Google Play מוסמכים
  • אחריות על קוד ו-SLA לאירועים
  • אחוז הצלחה של 98% בהגשה ראשונה ל-Play Console

צור איתנו קשר — נבצע הערכה של הפרויקט שלך ונציע את הפתרון האופטימלי. הזמן אינטגרציה היום וקבל מנויים יציבים לאפליקציה שלך.