🕵️ SicherheitslückenCVE-2026-85014 | undici up to 7.29.0/8.10.1 Socket Close denial of service(16.09.2026 um 04:26 Uhr)
🕵️ SicherheitslückenCVE-2026-85014 | undici up to 7.29.0/8.10.1 Socket Close denial of service(16.09.2026 um 04:26 Uhr)
1 Tag Serie
🤖 Android Tipps 🕛 vor 7 Jahren 6 Min Lesezeit
0

Advanced in-app billing: handling alternative purchase flows

↗ Quelle (feedproxy.google.com)
🗣️ Stimme:
📺
feedproxy.google.com

Posted by Oscar Rodriguez, Developer Advocate


to display dialogs that allow your users to complete their purchase.



While there is , the general flow is as follows:



  1. Call the method to deliver the result of the purchase operation.


  2. If your app has a server, we strongly recommend that you .


  3. Acknowledge the purchase either with for non-consumable items.


  4. Finally, grant entitlement to the purchased item inside the app.



If your app is still using the as soon as possible.



If you are using the AIDL API, or to launch the Google Play purchase dialog.


  • When the purchase dialog finishes, Google Play sends a response Intent to your onActivityResult() method, where you can verify if the purchase was successful.


  • If your app has a server, we strongly recommend that you .


  • If the purchase was successful, call the method to make the item available for purchase again.


  • Finally, grant entitlement to the purchased item inside the app.



  • Nevertheless, just implementing the above mentioned flow is not enough to correctly handle all types of purchases. There are two main cases in which purchases will not be correctly handled by this flow.



    The first case happens when the purchase flow is interrupted before it finishes. The app may have crashed, the user may have killed the app, or the user’s Internet connection may have been lost. In any case, it is possible for the app not to have delivered the item to the user even though Google Play has already processed the payment. In this case, the item is in limbo, because Google Play will not allow an item to be re-purchased until it is consumed, but the app or game won’t consume the item outside of the flow mentioned above.



    The second case happens during alternative purchase flows, such as , callback, call the by using the for consumable items or with callback, call the by using the method to make the item available for purchase again.


  • Finally, grant entitlement to the purchased item inside the app.



  • In either case, when you detect and process an unconsumed item in this manner, users will expect the app or game to communicate about it. We suggest that you display a dialog, message box, or notification that tells the user that they have successfully received their item.



    Keep in mind that your app’s called from any of those screens. For an optimal user experience, we suggest you make it so your app or game handles unacknowledged or unconsumed items regardless of the screen you display when .



    To support this scenario with the Google Play Billing Library, do the following:



    1. Google Play calls the by using the for consumable items or with callback, register a callback, unregister the listener.


    2. If your app has a server, we strongly recommend that you .


    3. Google Play calls your listener to notify your app that there is a new pending item. Inside it, call the method to make the item available for purchase again.


    4. Finally, grant entitlement to the purchased item inside the app.



    Just as before, you should display a dialog, message box, or notification that tells the user that they have successfully received their item.



    If you follow these steps, your app or game will be better prepared to robustly handle purchase flow interruptions and alternative purchase flows.






    Vollständiger Original-Artikel
    Den kompletten Beitrag mit allen Details direkt auf feedproxy.google.com lesen.
    ↗ Original-Artikel auf feedproxy.google.com lesen
    Wie bewertest du diesen Beitrag?
    1 Klick Feedback
    Teilen mit Netzwerk & Team:

    Community-Analysen & Experten-Meinungen 0

    Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
    Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
    Community Pulse: Relevanz-Einschätzung
    1 Klick Experten-Votum
    🔴 Akute Relevanz 0%
    🟡 In Evaluierung 0%
    🟢 Keine Auswirkung 0%
    Spannende Innovation 0%
    Verwandte Story-Cluster & Quellen (Vektor-KI)
    Port 8095 Engine
    7 Quellen
    CVE-2024-44965 | Linux Kernel up to 6.10.4 pti_clone_pgtable stack-based overflow (Nessus ID 208953 / WID-SEC-2024-2057)
    3 Quellen
    CVE-2026-84961 | undici up to 7.29.0/8.10.1 BalancedPool BalancedPool constructor connect/tls certificate validation
    3 Quellen
    CVE-2026-84657 | Jenkins up to 2.567.x CLI permission