જો તમે એન્ડ્રોઇડ પર ઇન-એપ ખરીદીઓ સાથે કામ કરો છો, તો વહેલા કે મોડા તમારે આનો સામનો કરવો પડશે ગૂગલ પ્લે બિલિંગ લાઇબ્રેરી v7આ ફક્ત બીજું અપડેટ નથી: તે API ફેરફારો, નવી સબ્સ્ક્રિપ્શન સુવિધાઓ, કન્સોલ આવશ્યકતાઓ અને Google તરફથી ખૂબ જ સ્પષ્ટ સમયમર્યાદા સાથે આવે છે. જો તમે કોઈપણ આશ્ચર્ય વિના Google Play પર તમારી એપ્લિકેશન પ્રકાશિત કરવાનું અથવા અપડેટ કરવાનું ચાલુ રાખવા માંગતા હોવ તો તેને અવગણવું હવે કોઈ વિકલ્પ નથી.
આ લેખ દરમ્યાન તમે જોશો કે કેવી રીતે Google Play બિલિંગ લાઇબ્રેરી v7 અપડેટ કરો અને અમલમાં મૂકો સ્ટેપ બાય સ્ટેપ: PBL 5 અને 6 થી શું અલગ છે તેનાથી લઈને સબ્સ્ક્રિપ્શન્સ, વન-ટાઇમ ખરીદીઓ, RTDN, પ્લે બિલિંગ લેબ સાથે પરીક્ષણ કેવી રીતે એકીકૃત કરવું અને .NET MAUI જેવી ઇકોસિસ્ટમમાં કેવી રીતે ટકી રહેવું જ્યાં સત્તાવાર સપોર્ટ પાછળ રહે છે. વિચાર એ છે કે, જ્યારે તમે વાંચન પૂર્ણ કરો છો, ત્યારે તમે આત્મવિશ્વાસ સાથે અને એક પૈસો ખર્ચ્યા વિના તમારા સ્થળાંતરની તૈયારી કરી શકો છો.
ગૂગલ પ્લે બિલિંગ લાઇબ્રેરી v7 ની ઝાંખી
ગૂગલ પ્લે બિલિંગ લાઇબ્રેરી 7 બિલનું સંચાલન કેવી રીતે થાય છે તેમાં નોંધપાત્ર સુધારાઓ રજૂ કરે છે. ચુકવણીઓ, સબ્સ્ક્રિપ્શન્સ અને ખાસ યોજનાઓજોકે, તે સ્થળાંતરને પ્રમાણમાં સરળ બનાવવા માટે રચાયેલ છે. સારા સમાચાર એ છે કે ઘણા નવા API વૈકલ્પિક છે: તમે ડિપેન્ડન્સી અપડેટ કરી શકો છો, થોડા સંદર્ભોમાં ફેરફાર કરી શકો છો, અને તમારું મૂળભૂત એકીકરણ હજુ પણ કામ કરશે.
આ સંસ્કરણ ત્રણ મુખ્ય ક્ષેત્રો પર ધ્યાન કેન્દ્રિત કરે છે: નવા સબ્સ્ક્રિપ્શન વિકલ્પો (વર્ચ્યુઅલ ક્વોટાની જેમ), માટે વધુ સારો સપોર્ટ પ્રીપેડ પ્લાન પર બાકી ખરીદીઓઅને API ફેરફારો જે અગાઉના સંસ્કરણો (PBL 5 અને 6) માં પહેલાથી જ અપ્રચલિત હતી તે સાફ કરે છે. વધુમાં, Google કેટલીક ભૂલ સંભાળવાની પ્રક્રિયા અને તમારે બાકી વ્યવહારોને કેવી રીતે હેન્ડલ કરવા તે ગોઠવે છે જેથી અસંગતતાઓ ટાળી શકાય.
શરૂ કરવા માટે, તમારા એપ્લિકેશન મોડ્યુલમાં તમારે તમારી ફાઇલમાં નિર્ભરતા અપડેટ કરવાની જરૂર છે બિલ્ડ.ગ્રેડલ:
dependencies {
def billingVersion = "7.0.0"
implementation "com.android.billingclient:billing:$billingVersion"
}
એકવાર આ થઈ જાય, પછી લેગસી API નો ઉપયોગ કરતા કોડની સમીક્ષા કરવાનો સમય આવી ગયો છે. ઘણા કોલ્સ સંબંધિત સબ્સ્ક્રિપ્શન પ્રોરેશન અને વૈકલ્પિક બિલિંગ તેમનું નામ બદલી નાખવામાં આવ્યું છે અથવા દૂર કરવામાં આવ્યું છે, તેથી Play Console પર કંઈપણ કમ્પાઇલ અને અપલોડ કરતા પહેલા BillingClient અને BillingFlowParams ના બધા સંદર્ભો સારી રીતે જોઈ લેવાનો વિચાર સારો છે.
એક વખતની ખરીદી અને સબ્સ્ક્રિપ્શન્સ સાથે મુદ્રીકરણ વ્યૂહરચનાઓ
જ્યારે તમે તમારી એપ્લિકેશનમાં ડિજિટલ ઉત્પાદનો વેચો છો, ત્યારે ફક્ત ખરીદી સંવાદ પેસ્ટ કરીને તેને એક દિવસ કહી દેવાનું પૂરતું નથી: ડિઝાઇનિંગ સમગ્ર ખરીદી ચક્ર દરમ્યાન સરળ વપરાશકર્તા અનુભવઆ સિંગલ પ્રોડક્ટ્સ (ઉપભોગ્ય અથવા બિન-ઉપભોગ્ય) અને સબ્સ્ક્રિપ્શન્સ બંનેને લાગુ પડે છે. પ્રક્રિયા જેટલી કુદરતી અને ઘર્ષણ રહિત હશે, રૂપાંતરણો તેટલા ઊંચા હશે અને રદ કરવાનો દર તેટલો ઓછો હશે.
પ્લે બિલિંગ સાથેનો સામાન્ય ખરીદી પ્રવાહ, પછી ભલે તે સબ્સ્ક્રિપ્શન માટે હોય કે એક જ વસ્તુ માટે, સામાન્ય રીતે આ સારી રીતે વ્યાખ્યાયિત તબક્કાઓને અનુસરે છે જેના વિશે તમારા બેકએન્ડને પણ જાણ હોવી જોઈએ:
- વપરાશકર્તા ઉપલબ્ધ ઉત્પાદનોનું અન્વેષણ કરે છે અને એક પસંદ કરે છે.
- ચુકવણી પૂર્ણ કરવા માટે એપ્લિકેશન ગૂગલ પ્લે બિલિંગ પ્રક્રિયા શરૂ કરે છે.
- ખરીદી પૂર્ણ થઈ ગઈ છે અને તમારી એપ્લિકેશનને પરિણામ પ્રાપ્ત થાય છે.
- તમારું સર્વર Google Play ડેવલપર API સામે ખરીદીને માન્ય કરે છે.
- તમારી સિસ્ટમમાં વપરાશકર્તાને અનુરૂપ સામગ્રી અથવા અધિકાર આપવામાં આવે છે.
- ગૂગલને જાણ કરવામાં આવે છે કે ખરીદીની પ્રક્રિયા થઈ ગઈ છે (ખર્ચ થઈ ગઈ છે અથવા સ્વીકારાઈ ગઈ છે).
ઉપભોજ્ય ઉત્પાદનોના કિસ્સામાં, તે ખૂબ જ મહત્વપૂર્ણ છે કે યોગ્ય સમયે ટોકનનો ઉપયોગ કરો સરળ પુનઃખરીદી અને મદદ માટે પરવાનગી આપવા માટે Google Play પર આકસ્મિક ખરીદીઓને અવરોધિત કરોસબ્સ્ક્રિપ્શન્સમાં, તમારે નવીકરણ, ગ્રેસ પીરિયડ્સ, સસ્પેન્શન અને રદ કરવાનું નિયંત્રિત કરવું જોઈએ જેથી વપરાશકર્તાને તેણે જે ચૂકવ્યું છે તે બરાબર મળે અને એક દિવસ ઓછો ન થાય.
એપ્લિકેશનમાં એકીકરણ એ ફક્ત અડધું કામ છે: તમારા સર્વરે એ જાળવવું આવશ્યક છે અધિકારો અને ખરીદીની સ્થિતિઓનો વિશ્વસનીય રેકોર્ડજો તમે ક્રોસ-પ્લેટફોર્મ એક્સેસ ઓફર કરો છો અથવા આવક, રીટેન્શન અને ચર્ન પર વિગતવાર આંકડાઓની જરૂર હોય તો આ ખાસ કરીને મહત્વપૂર્ણ છે. આ તે જગ્યા છે જ્યાં રીઅલ-ટાઇમ ડેવલપર નોટિફિકેશન્સ (RTDNs) આવે છે, જે ખરીદી જીવનચક્રના "બ્લેક બોક્સ" તરીકે કાર્ય કરે છે.
RTDN સાથે તમે મહત્વપૂર્ણ ઘટનાઓ પર લગભગ વાસ્તવિક સમયમાં પ્રતિક્રિયા આપી શકો છો: નવી ખરીદી, નવીકરણ નિષ્ફળતા, ગ્રેસ પીરિયડમાં પ્રવેશતું સબ્સ્ક્રિપ્શન, અથવા રદ કરાયેલ ખરીદી. આ તમને વ્યૂહરચના વિકસાવવાની મંજૂરી આપે છે સબ્સ્ક્રાઇબર રિકવરી અને છેતરપિંડી નિવારણ, જેમ કે ચુકવણી નિષ્ફળ જાય ત્યારે આપમેળે ઇમેઇલ મોકલવો અથવા નેટવર્ક સમસ્યાઓને કારણે ગ્રાહકને સંદેશ ન મળે તો અધિકારોમાં ફેરફાર કરવો.
રીઅલ-ટાઇમ ડેવલપર નોટિફિકેશન (RTDN) અને Google ક્લાઉડ પબ/સબ
RTDN નો ઉપયોગ Google ક્લાઉડ પબ/સબ ગૂગલ પ્લે અને તમારા બેકએન્ડ વચ્ચે રીઅલ-ટાઇમ મેસેજિંગ સિસ્ટમ તરીકે. ગૂગલ પ્લે પબ/સબ વિષય વિશે ઇવેન્ટ્સ પ્રકાશિત કરે છે, અને તમે ખરીદી અથવા સબ્સ્ક્રિપ્શનની સ્થિતિ બદલાય ત્યારે સંદેશા પ્રાપ્ત કરવા માટે તે વિષય પર સબ્સ્ક્રાઇબ કરો છો.
મૂળભૂત પ્રવાહ સરળ છે: Google Play પબ/સબ વિષય પર base64-એન્કોડેડ સંદેશ મોકલે છે, તમારા સબ્સ્ક્રાઇબર તેને કાઢે છે, તેને ડીકોડ કરે છે અને સૂચના પર પ્રક્રિયા કરે છે. ફીલ્ડની અંદર data સંદેશની અંદર તમને એક JSON ઑબ્જેક્ટ મળશે વિકાસકર્તા સૂચનાજેમાં સંદેશ સંસ્કરણ, પેકેજ નામ, ઇવેન્ટ સમય અને એક વખતની ખરીદી, સબ્સ્ક્રિપ્શન્સ, રદ કરેલી ખરીદીઓ અથવા ટ્રાયલ પરનો ચોક્કસ ડેટા જેવી માહિતી શામેલ છે.
{
"version": string,
"packageName": string,
"eventTimeMillis": long,
"oneTimeProductNotification": OneTimeProductNotification,
"subscriptionNotification": SubscriptionNotification,
"voidedPurchaseNotification": VoidedPurchaseNotification,
"testNotification": TestNotification
}
આ સંદેશાઓનો આભાર તમે કરી શકો છો વપરાશકર્તાનું ઉપકરણ નિષ્ફળ જાય તો પણ તમારા બેકએન્ડને સિંક્રનાઇઝ રાખોકલ્પના કરો કે કોઈ વપરાશકર્તા સફળતાપૂર્વક ખરીદી કરે છે, Google Play તેની પુષ્ટિ કરે છે, પરંતુ તમારી એપ્લિકેશન બિલિંગ લાઇબ્રેરીમાંથી કૉલબેક મેળવે તે પહેલાં મોબાઇલ ઉપકરણ કનેક્શન ગુમાવે છે. RTDN વિના, તમને કદાચ ક્યારેય ખબર નહીં પડે. Pub/Sub સાથે, તમારા સર્વરને એક અલગ સૂચના પ્રાપ્ત થાય છે અને તે ક્લાયન્ટથી સ્વતંત્ર રીતે હકદારી આપી શકે છે.
RTDN માટે ક્લાઉડ પબ/સબ ગોઠવણી
ગૂગલ પ્લે કન્સોલમાં RTDN સક્રિય કરતા પહેલા, તમારે એક પ્રોજેક્ટ તૈયાર કરવાની જરૂર છે ગૂગલ ક્લાઉડ પ્લેટફોર્મ (જીસીપી) અને ત્યાં Pub/Sub ને ગોઠવો. આ પ્રક્રિયા પ્રમાણમાં સીધી છે, પરંતુ પરવાનગીઓ અથવા સંસાધન નામો સાથે કોઈપણ આશ્ચર્ય ટાળવા માટે તેને કાળજીપૂર્વક અનુસરવું શ્રેષ્ઠ છે.
વિષય બનાવવો
સૌપ્રથમ તમારે એક બનાવવું પડશે પબ્લિક/સબ વિષય જે તમારા Google Play પ્રકાશન બિંદુ તરીકે કાર્ય કરશે. Google Cloud કન્સોલમાંથી, તમારા પ્રોજેક્ટને પસંદ કરો, Pub/Sub વિભાગમાં જાઓ, અને સત્તાવાર "વિષય બનાવો" માર્ગદર્શિકાને અનુસરીને એક નવો વિષય બનાવો. પરિણામનું નામ નીચેના ફોર્મેટમાં હશે:
projects/{project_id}/topics/{topic_name}
જ્યારે તમે સૂચનાઓ સક્રિય કરો છો ત્યારે તમારે તે પૂરું નામ પ્લે કન્સોલમાં પેસ્ટ કરવું પડશે.
સબ્સ્ક્રિપ્શન બનાવટ
આ થ્રેડમાંના સંદેશાઓ વાંચવા માટે, તમારે એકની જરૂર છે પબ/સબ સબ્સ્ક્રિપ્શનતમે તેને આ રીતે ગોઠવી શકો છો દબાણ અથવા તરીકે ખેંચોરેફરન્સ કોડલેબમાં, અમે પુલ સબ્સ્ક્રિપ્શન સાથે કામ કરીએ છીએ, જ્યાં તમારું બેકએન્ડ સંદેશાઓ પુનઃપ્રાપ્ત કરવા માટેની વિનંતીઓ શરૂ કરે છે.
તમારા આર્કિટેક્ચર માટે પુશ કે પુલ વધુ યોગ્ય છે કે નહીં તે નક્કી કરવા માટે તમારે ક્લાઉડ પબ/સબ સબ્સ્ક્રાઇબર માર્ગદર્શિકામાં વિકલ્પોની સમીક્ષા કરવી જોઈએ. એકવાર તમે નક્કી કરી લો, પછી "સબ્સ્ક્રિપ્શન ઉમેરો" દસ્તાવેજીકરણને અનુસરો અને તેને તમે અગાઉ બનાવેલા વિષય સાથે લિંક કરો. તે બિંદુથી, Google Play વિષયમાં પ્રકાશિત કરે છે તે કોઈપણ સંદેશા તમારા સબ્સ્ક્રાઇબર માટે ઍક્સેસિબલ હશે.
તમારી થીમ પર પ્રકાશિત કરવા માટે Google Play ને પરવાનગીઓ
જ્યાં સુધી તમે સ્પષ્ટ પરવાનગી ન આપો ત્યાં સુધી પબ/સબ ગૂગલ પ્લેને કંઈપણ પ્રકાશિત કરવાની મંજૂરી આપશે નહીં. સેવા ખાતુંગૂગલ ક્લાઉડ કન્સોલમાં, તમારે વિષય પરવાનગી સેટિંગ્સમાં જવાની અને મુખ્ય ઉમેરવાની જરૂર છે:
google-play-developer-notifications@system.gserviceaccount.com
આ ખાતાને ની ભૂમિકા આપો પબ્લિક/સબ પ્રકાશક (પ્રકાશક). ફેરફારો સાચવો અને તે ક્ષણથી, Google Play તમારી થીમ પર અધિકૃતતાની સમસ્યાઓ વિના RTDN મોકલી શકશે.
ગૂગલ પ્લે કન્સોલમાં RTDN સક્રિય કરો

એકવાર પબ/સબ ગોઠવાઈ જાય, પછી તમારે પ્લે કન્સોલને જણાવવું પડશે કે સૂચનાઓ ક્યાં મોકલવી. ગૂગલ પ્લે કન્સોલમાં તમારી એપ્લિકેશનમાં, અહીં જાઓ Play > મુદ્રીકરણ સેટિંગ્સ વડે મુદ્રીકરણ કરો અને રીઅલ-ટાઇમ ડેવલપર સૂચનાઓ વિભાગ શોધો.
ત્યાં તમારે આ કરવાની જરૂર પડશે:
- રીઅલ-ટાઇમ સૂચનાઓ સક્ષમ કરવા માટે બોક્સને ચેક કરો.
- ફોર્મેટ પ્રમાણે, સંબંધિત ફીલ્ડમાં સંપૂર્ણ પબ/સબ વિષયનું નામ દાખલ કરો.
projects/{project_id}/topics/{topic_name}. - ટેસ્ટ બટનનો ઉપયોગ કરીને ટેસ્ટ મેસેજ મોકલો.
પરીક્ષણ સંદેશ એ ચકાસવા માટે જરૂરી છે કે એકીકરણ સારી રીતે અમલમાં મુકાયું છે.જો તમારી પાસે પુલ સબ્સ્ક્રિપ્શન છે, તો તમે ક્લાઉડ કન્સોલ પર જઈ શકો છો, સબ્સ્ક્રિપ્શન પસંદ કરી શકો છો, "સંદેશાઓ જુઓ" પર ક્લિક કરી શકો છો અને પરીક્ષણ સંદેશ કાઢો. કરવાનું ભૂલશો નહીં ACK વારંવાર રીસેપ્શન ટાળવા માટે તમે વાંચેલા કોઈપણ સંદેશનો ઉલ્લેખ કરો.
પુશ સબ્સ્ક્રિપ્શન્સ માટે, ચકાસો કે તમારો એન્ડપોઇન્ટ સંદેશ પ્રાપ્ત કરે છે અને માન્ય HTTP કોડ સાથે પ્રતિસાદ આપે છે. જો કંઈક ખોટું થાય છે, તો કન્સોલ પરીક્ષણ પ્રકાશિત કરતી વખતે એક ભૂલ પ્રદર્શિત કરશે, જે સામાન્ય રીતે વિષયના નામ અથવા સેવા એકાઉન્ટ પરવાનગીઓ સાથે સંબંધિત હોય છે.
છેલ્લે, તમે કયા પ્રકારની સૂચનાઓ પ્રાપ્ત કરવા માંગો છો તે ગોઠવી શકો છો: ફક્ત સબ્સ્ક્રિપ્શન્સ અને રદ કરેલી ખરીદીઓ, અથવા એક વખતની ખરીદી સહિતની બધી સૂચનાઓ (ONE_TIME_PRODUCT_PURCHASED અને ONE_TIME_PRODUCT_CANCELED જેવી ઇવેન્ટ્સ). જો તમે પણ અનન્ય ઉત્પાદનોનો ઉપયોગ કરો છો, તો દરેક વસ્તુ પર દૃશ્યતા જાળવવા માટે સમગ્ર સેટને સક્રિય કરવો એ સામાન્ય પ્રથા છે.
તમારા બેકએન્ડમાં પબ/સબ સબ્સ્ક્રાઇબર બનાવો
થીમ અને સબ્સ્ક્રિપ્શન તૈયાર થયા પછી, અમલમાં મૂકવાનો સમય આવી ગયો છે RTDN વાંચે છે અને પ્રક્રિયા કરે છે તે સબ્સ્ક્રાઇબરગૂગલ ઘણી ભાષાઓમાં ઉદાહરણો પૂરા પાડે છે; જાવામાં એક લાક્ષણિક કેસ ક્લાઉડ પબ/સબ ક્લાયંટ લાઇબ્રેરીઓનો ઉપયોગ શરૂ કરવા માટે કરે છે Subscriber જે સંદેશાઓ સાંભળે છે અને ફોન કરે છે MessageReceiver.
સામાન્ય પેટર્ન હંમેશા સમાન હોય છે: તમે સંદેશ મેળવો છો, તમે ક્ષેત્રને ડીકોડ કરો છો data તમે base64 ને ટેક્સ્ટમાં કન્વર્ટ કરો છો, JSON નું વિશ્લેષણ કરો છો અને સંબંધિત ફીલ્ડ્સ કાઢો છો (જેમ કે packageName, oneTimeProductNotification o subscriptionNotification) અને તમારા સિસ્ટમમાં શું કરવું તે નક્કી કરો. સૂચનાની સફળતાપૂર્વક પ્રક્રિયા કર્યા પછી, તમારે એક ack સાથે સંદેશની પુષ્ટિ કરો જેથી પબ/સબ તેને ફરીથી ન મોકલે.
ઉદાહરણ કોડ બતાવે છે કે રીસીવર સંસ્કરણ અને પેકેજ નામ કેવી રીતે છાપે છે, પરંતુ વાસ્તવિક અમલીકરણમાં તમે આગળ વધશો: તમે ખરીદીને માન્ય કરશો, સાચા વપરાશકર્તાને અધિકાર આપશોતમારે તમારા ડેટાબેઝને અપડેટ કરવું પડશે અને, જો જરૂરી હોય તો, ખરીદીનો ઉપયોગ કરવા અથવા ઓળખવા માટે Play Developer API ને કૉલ કરવો પડશે.
વપરાશકર્તાને સૂચનાઓ લિંક કરો: obfuscatedAccountId નો ઉપયોગ કરીને
સર્વરમાંથી ખરીદીઓનું સંચાલન કરતી વખતે એક સામાન્ય સમસ્યા એ છે કે ચોક્કસ RTDN સૂચના કયા વપરાશકર્તાની છે તે જાણવું. આ માટે, બિલિંગ ક્લાયંટ API તમને એક જોડવાની મંજૂરી આપે છે અસ્પષ્ટ એકાઉન્ટ ઓળખકર્તા જ્યારે તમે ખરીદી પ્રવાહ શરૂ કરો છો: obfuscatedAccountId.
વિચાર એ છે કે તમે તમારી સિસ્ટમમાંથી એક સ્થિર ઓળખકર્તાનો ઉપયોગ કરો છો (ઉદાહરણ તરીકે, વપરાશકર્તાનું આંતરિક ID) પરંતુ ગોપનીયતા અને સુરક્ષા કારણોસર અસ્પષ્ટઆ મૂલ્ય ખરીદી સાથે સંકળાયેલું છે અને પછી Google Play Developer API માંથી પરત કરવામાં આવેલી માહિતીમાં દેખાય છે, જેથી જ્યારે તમે RTDN મેળવો અને ટોકન ચકાસો, ત્યારે તમને સ્પષ્ટપણે ખબર પડશે કે તમારે તમારા ડેટાબેઝમાં કયા એકાઉન્ટનો અધિકાર આપવો જોઈએ.
ગ્રાહક બાજુએ, તૈયાર કરતી વખતે BillingFlowParamsતમારે ફક્ત યાદી બનાવવાની જરૂર છે ProductDetailsParams અને ક callલ કરો setObfuscatedAccountId(obfuscatedAccountId) ફ્લો શરૂ કરતા પહેલા. તે દૃશ્યમાન વપરાશકર્તા અનુભવને બદલતું નથી, પરંતુ તે પ્રક્રિયાને ખૂબ સરળ બનાવે છે. બેકએન્ડ ખરીદી ફાળવણી તર્ક અને ગુગલને છેતરપિંડી શોધવામાં મદદ કરે છે.
Google Play ડેવલપર API નો ઉપયોગ કરીને ખરીદીઓ ચકાસો
તમારા સર્વર પર કોઈપણ અધિકારો આપતા પહેલા, ખરીદી કાયદેસર છે કે નહીં તે ચકાસવું ફરજિયાત છે. ગૂગલ પ્લે ડેવલપર APIક્લાયન્ટ અથવા RTDN શું કહે છે તેના પર આધાર રાખવો પૂરતો નથી: તમારે માન્ય કરવું આવશ્યક છે purchaseToken સીધા સત્તાવાર અંતિમ બિંદુઓ વિરુદ્ધ, અને જો જરૂરી હોય તો રિફંડ મેનેજ કરો.
અનન્ય ઉત્પાદનોના કિસ્સામાં, તમે અંતિમ બિંદુનો ઉપયોગ કરશો purchases.products:getસબ્સ્ક્રિપ્શન્સ માટે, પાથ આના દ્વારા દોરી જાય છે purchases.subscriptionsv2:getભલામણ કરેલ પ્રવાહ છે:
- બહાર કા .ો
purchaseTokenપબ/સબ સંદેશમાંથી. - તમારા ડેટાબેઝને તપાસો કે તમે પહેલાથી જ તેની પ્રક્રિયા કરી છે કે નહીં; દરેક ટોકન છે વૈશ્વિક સ્તરે અનોખુંતેથી ડુપ્લિકેટ્સ ટાળવા માટે તે પ્રાથમિક કી તરીકે સંપૂર્ણ છે.
- જો તે નવું હોય, તો પેકેજ, SKU, અને
purchaseToken. - ચકાસો કે પ્રતિભાવ ખરીદીની સ્થિતિ દર્શાવે છે. ખરીદી (બાકી કે રદ કરાયેલ નથી).
- જો બધું મેળ ખાય, તો ટોકન રજીસ્ટર કરો અને સંકળાયેલ વપરાશકર્તાને અનુરૂપ અધિકાર આપો.
જાવામાંથી પ્લે ડેવલપર API સાથે વાતચીત કરવા માટે તમે ઉપયોગ કરી શકો છો એન્ડ્રોઇડપ્રકાશક, JSON ફોર્મેટમાં સેવા એકાઉન્ટ ઓળખપત્રો સાથે પ્રારંભ થયેલ છે. તમે સ્કોપ ગોઠવો છો AndroidPublisherScopes.ANDROIDPUBLISHERતમે ક્લાયંટ બનાવો અને પદ્ધતિને કૉલ કરો purchases().products().get(...)જો કોઈ કામચલાઉ નેટવર્ક અથવા સેવા સમસ્યાને કારણે કોલ નિષ્ફળ જાય, તો ભલામણ કરવામાં આવે છે કે ઘાતાંકીય બેકઓફ સાથે પુનઃપ્રયાસો અમલમાં મૂકો જેથી ઇવેન્ટ ચૂકી ન જાઓ.
સર્વર પરથી ખરીદીની પુષ્ટિ કરો અથવા પૂર્ણ કરો
એકવાર તમે ખરીદીની ચકાસણી કરી લો અને તમારી સિસ્ટમમાં અધિકૃતતા આપી દો, પછી આગળનું પગલું એ છે કે Google ને સૂચિત કરો કે વ્યવહાર સફળતાપૂર્વક પ્રક્રિયા કરવામાં આવ્યો છે. સિંગલ-આઇટમ ઉત્પાદનો માટે, તમારી પાસે બે વિકલ્પો છે: ખરીદીનો ઉપયોગ કરો અથવા ફક્ત તેણીને ઓળખો.
ઉપભોક્તા ઉત્પાદનો (દા.ત., વર્ચ્યુઅલ ચલણ, જીવન, વગેરે) એ અંતિમ બિંદુમાંથી પસાર થવું આવશ્યક છે. purchases.products:consumeઆ ટોકનને વપરાયેલ તરીકે ચિહ્નિત કરે છે અને વપરાશકર્તાને સંઘર્ષ વિના સમાન વસ્તુ ફરીથી ખરીદવાની મંજૂરી આપે છે. બિન-ઉપયોગી ઉત્પાદનો માટે (જેમ કે જીવનભર પ્રીમિયમ સંસ્કરણને અનલૉક કરવું), તમારે કૉલ કરવો આવશ્યક છે purchases.products:acknowledge, જે Google ને જાણ કરે છે કે વપરાશકર્તા પાસે પહેલાથી જ સંકળાયેલ અધિકાર છે.
સબ્સ્ક્રિપ્શન્સનો ઉપયોગ થાય છે purchases.subscriptions:acknowledgeજે દર્શાવે છે કે સબ્સ્ક્રિપ્શન સફળતાપૂર્વક પ્રક્રિયા કરવામાં આવ્યું છે અને વપરાશકર્તાને સોંપવામાં આવ્યું છે. જો તમે વાજબી સમયમર્યાદામાં ખરીદી સ્વીકારશો નહીં, તો Google માની શકે છે કે કોઈ સમસ્યા છે અને વ્યવહાર ઉલટાવી શકે છે, તેથી તે મહત્વપૂર્ણ છે કે તમે અધિકાર આપ્યા પછી તરત જ પાછા કરવામાં આવે છે.
તમારા AndroidPublisher સહાયકમાં તમે પદ્ધતિઓ ઉમેરી શકો છો જેમ કે executeProductPurchasesConsume y executeProductPurchasesAcknowledge જે અનુરૂપ અંતિમ બિંદુઓને બોલાવે છે. ફરીથી, પ્રસંગોપાત નિષ્ફળતાના કિસ્સામાં ફરીથી પ્રયાસો અમલમાં મૂકવાની સલાહ આપવામાં આવે છે, જેથી ખાતરી કરી શકાય કે કોઈ ટોકન ખતરનાક મધ્યવર્તી સ્થિતિમાં ન રહે.
પ્લે બિલિંગ લેબ સાથે અદ્યતન પરીક્ષણ
ઘણા વિકાસકર્તાઓ જે પાસું ઓછું સમજે છે તે પરીક્ષણ તબક્કો છે. કોઈપણ ડિગ્રી આત્મવિશ્વાસ સાથે લોન્ચ કરવા માટે, તમારે અનુકરણ કરવામાં સક્ષમ હોવું જરૂરી છે નેટવર્ક ભૂલો, બિન-માનક પ્રતિભાવો, અને એજ કેસઆ તે જગ્યા છે જ્યાં Play Billing Lab આવે છે, Google Play પર એક મફત એપ્લિકેશન જે ખાસ કરીને Play Billing Library એકીકરણના પરીક્ષણ માટે રચાયેલ છે.
પ્લે બિલિંગ લેબમાં શામેલ છે જવાબ સિમ્યુલેટર જે અલગ અલગ દબાણ કરવાની મંજૂરી આપે છે BillingResponseCode તમારી એપ્લિકેશનના બિલિંગ લાઇબ્રેરીના કૉલ્સમાં. આ રીતે, તમે એવા દૃશ્યો ફરીથી બનાવી શકો છો જ્યાં, ઉદાહરણ તરીકે, ગ્રાહક નેટવર્ક સમસ્યાને કારણે ખરીદી પૂર્ણ કરવામાં અસમર્થ હોય, પરંતુ તમારો બેકએન્ડ RTDN ને યોગ્ય રીતે પ્રક્રિયા કરે છે અને આખરે વપરાશકર્તાના હસ્તક્ષેપ વિના હકદારી આપે છે.
તમારી એપ્લિકેશન સિમ્યુલેટર સાથે વાતચીત કરી શકે તે માટે, તમારે મેટાડેટાનો ઉપયોગ કરીને "બિલિંગ ઓવરરાઇડ્સ" પરીક્ષણ સક્ષમ કરવાની જરૂર છે AndroidManifest.xml:
<manifest ... >
<application ... >
...
<meta-data
android:name="com.google.android.play.largest_release_audience.NONPRODUCTION"
android:value="" />
<meta-data
android:name="com.google.android.play.billingclient.enableBillingOverridesTesting"
android:value="true" />
</application>
</manifest>
લેબલ બિલિંગઓવરરાઇડ્સટેસ્ટિંગ સક્ષમ કરો બિલિંગ લાઇબ્રેરીમાં સિમ્યુલેટેડ રિસ્પોન્સ ટેસ્ટ સક્રિય કરો. NONPRODUCTION ટૅગ એ એક પ્રકારનું રીમાઇન્ડર છે કે આ બિલ્ડ ઓવરરાઇડ્સ સક્રિય હોય ત્યારે ઉત્પાદનમાં ન જવું જોઈએ. વપરાશકર્તાઓ માટે અંતિમ સંસ્કરણ તૈયાર કરતી વખતે, ખાતરી કરો કે આ મેટાડેટા દૂર કરો અથવા અલગ મેનિફેસ્ટનો ઉપયોગ કરો.
એકવાર ગોઠવાઈ ગયા પછી, પ્લે બિલિંગ લેબ એપ્લિકેશનમાંથી, લાયસન્સ ટેસ્ટર એકાઉન્ટથી લોગ ઇન કરો, "સિમ્યુલેટ પ્લે બિલિંગ લાઇબ્રેરી રિસ્પોન્સ" વિકલ્પ સક્રિય કરો, અને દરેક API માટે તમે કયા એરર કોડ પરત કરવા માંગો છો તે પસંદ કરો (ઉદાહરણ તરીકે, consumeAsyncપછી તમે ફક્ત તમારી એપ્લિકેશન ખોલો અને તમે જે ફ્લોનું પરીક્ષણ કરવા માંગો છો તે ચલાવો: સિમ્યુલેટર ગોઠવેલા પ્રતિભાવો પરત કરશે અને તમે ચકાસી શકો છો કે તમારું રીટ્રી લોજિક, એરર હેન્ડલિંગ અને RTDN અપેક્ષા મુજબ વર્તે છે.
પ્લે બિલિંગ લાઇબ્રેરી 7 માં સ્થાનાંતરિત કરતી વખતે કી API ફેરફારો
RTDN અને પરીક્ષણ ઉપરાંત, PBL 7 પર સ્થાનાંતરિત થવામાં કેટલાક ચોક્કસ API મુદ્દાઓને સંબોધવાનો સમાવેશ થાય છે. PBL 5 અથવા 6 થી આવતા લોકો માટે, પ્રોજેક્ટ સરળતાથી કમ્પાઇલ થાય અને વ્યવસાયિક તર્ક સુસંગત રહે તેની ખાતરી કરવા માટે સૌથી સુસંગત ફેરફારોની સમીક્ષા કરવી યોગ્ય છે.
પ્રથમ, સંબંધિત API પ્રોરેશન મોડ સબ્સ્ક્રિપ્શન ફેરફાર વિકલ્પો દૂર કરવામાં આવ્યા છે. હવે, નીચેનો ઉપયોગ થાય છે: રિપ્લેસમેન્ટમોડ યોજનામાં ફેરફાર (અપગ્રેડ, ડાઉનગ્રેડ, વગેરે) મેનેજ કરવા માટે. જો તમે હજુ પણ જેવી પદ્ધતિઓનો ઉપયોગ કરી રહ્યા છો setReplaceProrationMode o setReplaceSkusProrationModeતમારે તેમને નવા પ્રકારોમાં સ્થાનાંતરિત કરવા પડશે setSubscriptionReplacementMode અને અપડેટ કરેલા દસ્તાવેજો અનુસાર લોજિકને સમાયોજિત કરો.
API પણ દૂર કરવામાં આવ્યું છે. launchPriceConfirmationFlowજે પહેલાથી જ જૂનું તરીકે ચિહ્નિત થયેલ હતું. સબ્સ્ક્રિપ્શન કિંમતમાં ફેરફારને હેન્ડલ કરવા માટે, તમારે કિંમત ફેરફાર માર્ગદર્શિકામાં નવા વર્કફ્લો અને ભલામણોનો સંદર્ભ લેવો જોઈએ, જેમાં વપરાશકર્તાને યોગ્ય રીતે કેવી રીતે જાણ કરવી અને સંમતિનું સંચાલન કેવી રીતે કરવું તેની વિગતો આપવામાં આવી છે.
બીજો મહત્વનો મુદ્દો એ છે કે વૈકલ્પિક બિલિંગ APIપદ્ધતિઓ BillingClient.Builder.enableAlternativeBilling, AlternativeBillingListener y AlternativeChoiceDetails વધુ સંરેખિત નામકરણની તરફેણમાં અદૃશ્ય થઈ ગયા છે: હવે તમારે ઉપયોગ કરવો પડશે BillingClient.Builder.enableUserChoiceBilling() આગળ UserChoiceBillingListener y UserChoiceDetailsગુગલના મતે, તે મૂળભૂત રીતે નામમાં ફેરફાર છે જેમાં વર્તનમાં કોઈ ફેરફાર થયો નથી, જે સંદર્ભમાં કરારો દ્વારા ચિહ્નિત થયેલ છે જેમ કે ગૂગલ અને એપિક ગેમ્સ એન્ડ્રોઇડ ખોલવા માટે સંમત થયા.
અંતે, એક નવો ભૂલ કોડ દાખલ કરવામાં આવે છે. નેટવર્ક_ભૂલ en BillingResultઅને અર્થ અને શરતો SERVICE_TIMEOUT અને SERVICE_UNAVAILABLEજો તમારી પાસે કસ્ટમ એરર હેન્ડલિંગ લોજિક હોય (ઉદાહરણ તરીકે, વપરાશકર્તાને સંદેશ ક્યારે બતાવવો તે નક્કી કરવું, ક્યારે શાંતિથી ફરી પ્રયાસ કરવો, વગેરે), તો આ નવી ઘોંઘાટ ધ્યાનમાં લેવા માટે તેની સમીક્ષા કરવાની સલાહ આપવામાં આવે છે.
ખરીદી ન થાય ત્યાં સુધી બાકી વ્યવહારો અને ઓર્ડર આઈડીનો અભાવ
PBL 7 માં એક સૂક્ષ્મ ફેરફાર એ છે કે લાઇબ્રેરી હવે જનરેટ કરતી નથી બાકી ખરીદીઓ માટે ઓર્ડર ID. આ કિસ્સાઓમાં, orderId ખરીદી ખરીદી કરેલ સ્થિતિમાં પહોંચ્યા પછી જ તે ઉપલબ્ધ થશે. આ ખાસ કરીને વર્કફ્લોને અસર કરે છે જ્યાં તમે શરૂઆતથી જ ઓર્ડર ID ને પ્રાથમિક સંદર્ભ તરીકે ઉપયોગ કર્યો હતો.
ગુગલની ભલામણ એ છે કે તમે આના પર આધાર રાખો તમારા રેકોર્ડ્સ અને સમાધાન માટે ખરીદી ટોકનઓછામાં ઓછું જ્યારે વ્યવહાર બાકી હોય. જો તમને Play માંથી કોઈ ખરીદી ગાયબ થઈ ગઈ હોય, તો તપાસો જો ખરીદી ગાયબ થઈ જાય તો શું કરવું.
જો તમે હજુ સુધી બાકી બેલેન્સ સાથે કામ કર્યું નથી, તો બિલિંગ લાઇબ્રેરી ઇન્ટિગ્રેશન માર્ગદર્શિકા અને દસ્તાવેજોની સમીક્ષા કરો પ્રાપ્તિ જીવનચક્ર વ્યવસ્થાપનત્યાં તમને વિવિધ સ્થિતિઓ, દરેક સ્થિતિ પર કેવી રીતે પ્રતિક્રિયા આપવી અને RTDN આ કોયડામાં કેવી રીતે ફિટ થાય છે તે મળશે.
PBL 7 માં નવી વૈકલ્પિક ક્ષમતાઓ: વર્ચ્યુઅલ હપ્તાઓ અને પૂર્વ ચુકવણીઓ
PBL 7 ની "સરસ" નવી સુવિધાઓમાં આનો સમાવેશ થાય છે વર્ચ્યુઅલ ફી સબ્સ્ક્રિપ્શન્સ (વર્ચ્યુઅલ હપ્તા સબ્સ્ક્રિપ્શન્સ) અને પ્રીપેડ સબ્સ્ક્રિપ્શન્સ માટે બાકી ખરીદીઓ માટે વિસ્તૃત સપોર્ટ. આ સુવિધાઓ ફરજિયાત નથી, પરંતુ તે તમને તમારા વ્યવસાય મોડેલને વિવિધ બજારોમાં અનુકૂલિત કરતી વખતે વધુ સુગમતા આપી શકે છે.
વર્ચ્યુઅલ હપ્તાઓ વપરાશકર્તાને લાંબા ગાળાના સબ્સ્ક્રિપ્શન માટે ચૂકવણી કરવાની મંજૂરી આપે છે નાના સમયાંતરે ચૂકવણીએક મોટી ચુકવણીને બદલે, Google સમજાવે છે કે ડેવલપર બિલિંગ હેતુઓ માટે, તમને માસિક હપ્તાઓ સાથે વાર્ષિક યોજના હેઠળ માસિક ચુકવણીઓ મળતી રહે છે. જો કોઈ વપરાશકર્તા ચુકવણી ચૂકી જાય, તો તમારે કે Google એ પાછલા હપ્તાઓ પુનઃપ્રાપ્ત કરવાનો પ્રયાસ કરવો જોઈએ નહીં. આનાથી તેનો વ્યવહારિક ઉપયોગ ઓછામાં ઓછો શરૂઆતમાં પ્રમાણભૂત માસિક સબ્સ્ક્રિપ્શન જેવો જ બને છે.
હમણાં માટે, આ સબ્સ્ક્રિપ્શન ફી ફક્ત ઉપલબ્ધ છે બ્રાઝિલ, ફ્રાન્સ, ઇટાલી અને સ્પેનનવા સપોર્ટેડ દેશો માટે Google Play Console પર નજર રાખવાની ભલામણ કરે છે. ગોઠવણી આના દ્વારા કરવામાં આવે છે ProductDetails.InstallmentPlanDetails અને તેમને તમારી એપ્લિકેશનમાં એકીકૃત કરવા માટે ચોક્કસ માર્ગદર્શિકાને અનુસરીને.
સમાંતર રીતે, સમર્થનનો વિસ્તાર કરવામાં આવી રહ્યો છે પ્રીપેડ સબ્સ્ક્રિપ્શન્સ માટે બાકી ખરીદીઓહવે તમે એવા મોડેલ્સ ઓફર કરી શકો છો જ્યાં વપરાશકર્તા એપ્લિકેશનમાં ખરીદી શરૂ કરે છે અને પછીથી અન્ય માધ્યમો દ્વારા ચુકવણી પૂર્ણ કરે છે, અને બિલિંગ લાઇબ્રેરી જાણે છે કે તે પ્રવાહને યોગ્ય રીતે કેવી રીતે હેન્ડલ કરવો. સક્રિયકરણ કૉલ કરીને કરવામાં આવે છે. enablePendingPurchases() બિલિંગક્લાયન્ટ શરૂ કરતી વખતે અને ખાસ કરીને પ્રીપેડ પ્લાન માટે, ઉપયોગ કરીને PendingPurchasesParams.Builder.enablePrepaidPlans().
પ્લે બિલિંગ લાઇબ્રેરી 5 અને 6 માટે ઘસારો સમયગાળો
PBL 7 દ્રશ્ય પર હોવાથી, ગૂગલે સ્પષ્ટ તારીખો નક્કી કરી છે આવૃત્તિ 5 અને 6 માટે સમર્થન પાછું ખેંચવુંજો તમે હજુ પણ તેમાંથી કોઈપણમાં છો, તો તમારે કેલેન્ડરને લાલ રંગમાં ચિહ્નિત કરવું આવશ્યક છે:
- નવી એપ્સ અને અપડેટ્સ માટે, Google Play બિલિંગ લાઇબ્રેરી 5 31 ઓગસ્ટ, 2024 ના રોજ સત્તાવાર રીતે બંધ કરવામાં આવશે. 1 નવેમ્બર, 2024 સુધી એક્સટેન્શનની વિનંતી કરવી શક્ય છે, પરંતુ આ એવી વસ્તુ નથી જેના પર તમારે લાંબા ગાળે આધાર રાખવો જોઈએ.
- ગૂગલ પ્લે બિલિંગ લાઇબ્રેરી 6 નો ઉપયોગ 1 ઓગસ્ટ, 2025 સુધી નવી એપ્લિકેશનો પ્રકાશિત કરવા અને 1 નવેમ્બર, 2025 સુધી હાલની એપ્લિકેશનોને અપડેટ કરવા માટે થઈ શકે છે.
તે તારીખ પછી, જો તમે ઓછામાં ઓછા સંસ્કરણ 6 પર અથવા આદર્શ રીતે સંસ્કરણ 7 પર સ્થાનાંતરિત ન થયા હો, તો તમારે નવીનતમ સંસ્કરણ પર અપડેટ કરવાની જરૂર પડશે. 7 સંસ્કરણપ્લે કન્સોલમાં તમારા અપડેટ્સ બ્લોક કરવામાં આવશે. જો કે તમારી એપ્લિકેશન વપરાશકર્તાઓના ઉપકરણો પર કાર્ય કરવાનું ચાલુ રાખશે, તમે સ્થિર થઈ જશો, બગ્સ સુધારવા અથવા સ્ટોરમાં પ્રકાશન પર આધાર રાખતી નવી સુવિધાઓ ઉમેરવામાં અસમર્થ રહેશો.
.NET MAUI અને વર્તમાન મર્યાદાઓનો કેસ
જો તમે .NET MAUI અને Android પર સબ્સ્ક્રિપ્શન્સ સાથે કામ કરી રહ્યા છો, તો તમે કદાચ પહેલાથી જ વાંચ્યું હશે અથવા અનુભવ્યું હશે કે તે એટલું સરળ નથી. ઘણા પ્રોજેક્ટ્સનો ઉપયોગ થયો પ્લગઇન.ઇનએપબિલિંગ જેમ્સ મોન્ટેમાગ્નો દ્વારા, પરંતુ પ્લગઇન આર્કાઇવ અને જાળવણી વિનાનું છે, તેથી તેને બિલિંગ લાઇબ્રેરી 7 ને સપોર્ટ કરવા માટે અપડેટ કરવામાં આવશે નહીં. તે જ સમયે, સત્તાવાર પેકેજ ઝામારિન.એન્ડ્રોઇડ.ગુગલ.બિલિંગક્લાયંટ તે Xamarin.Android ઇકોસિસ્ટમ સાથે જોડાયેલું રહ્યું છે અને .NET MAUI સાથે સીધા સુસંગત નથી.
વ્યવહારુ પરિણામ એ છે કે પ્લે કન્સોલ ચેતવણી આપે છે તમારી એપ બિલિંગ લાઇબ્રેરી 7.0.0 કે તેથી વધુનો ઉપયોગ કરતી નથી, જે જો તમે જૂની લાઇબ્રેરીઓનો ઉપયોગ કરવાનું ચાલુ રાખો છો તો અપડેટ્સને અવરોધિત કરે છે. કેટલાક ડેવલપર્સે કઠોર ઉકેલો પસંદ કર્યા છે, જેમ કે વર્ઝન અપલોડ કરવા માટે સબ્સ્ક્રિપ્શન્સને અસ્થાયી રૂપે અક્ષમ કરવા, પરંતુ જો તમારું બિઝનેસ મોડેલ તે મુદ્રીકરણ પર આધારિત હોય તો તે ટકાઉ નથી.
આ સંદર્ભમાં, ઘણી ટીમો વિકલ્પો પર વિચાર કરી રહી છે જેમ કે તૃતીય-પક્ષ SDK આ સેવાઓ પહેલાથી જ PBL 7 ને સપોર્ટ કરે છે અને વધુ સ્થિર, ક્રોસ-પ્લેટફોર્મ API (ઉદાહરણ તરીકે, Android, iOS અને અન્ય પ્લેટફોર્મ માટે SDK સાથે સબ્સ્ક્રિપ્શન બેકએન્ડ સોલ્યુશન્સ) પ્રદર્શિત કરે છે. આ સેવાઓ સામાન્ય રીતે બિલિંગ લાઇબ્રેરી સંસ્કરણ સ્થળાંતરને હેન્ડલ કરે છે અને સ્થિર રેપર પ્રદર્શિત કરે છે, જે દરેક નવા Google નાપસંદગી સાથે તણાવને નોંધપાત્ર રીતે ઘટાડે છે.
જ્યાં સુધી માઇક્રોસોફ્ટ અને MAUI ટીમ ઓફર ન કરે ત્યાં સુધી સત્તાવાર પેકેજ અપડેટ થયેલ અને સંપૂર્ણપણે સુસંગત બિલિંગ લાઇબ્રેરી 7 સાથે, વિકલ્પોમાં શામેલ છે: મૂળ બિલિંગ લાઇબ્રેરી સાથે તમારા પોતાના બંધનનો અમલ કરવો, તૃતીય-પક્ષ સેવાનો ઉપયોગ કરવો, અથવા તમારા MAUI પ્રોજેક્ટમાં ખરીદીઓને કેવી રીતે એકીકૃત કરવી તે ફરીથી વિચારવું. કોઈ પણ સંજોગોમાં, છેલ્લી ઘડી સુધી નિર્ણય ન છોડવો શ્રેષ્ઠ છે, કારણ કે પ્લેની સમયમર્યાદા નિશ્ચિત છે.
એકંદરે, Google Play બિલિંગ લાઇબ્રેરી v7 ના અપડેટમાં ડિપેન્ડન્સીની સમીક્ષા કરવી, જૂના API ને સાફ કરવા, ખરીદી ચકાસણી અને RTDN સાથે બેકએન્ડ લોજિકને મજબૂત બનાવવું અને લાઇવ થતાં પહેલાં બધી ભૂલો શોધવા માટે Play Billing Lab જેવા પરીક્ષણ સાધનોનો ઉપયોગ કરવાનો સમાવેશ થાય છે. જે લોકો આ સ્થળાંતરને સુધારવા માટે સમય કાઢે છે તેઓ પ્રીપેડ પ્લાન, વર્ચ્યુઅલ ફી, નેટવર્ક ભૂલો અને સબ્સ્ક્રિપ્શન જીવનચક્રના ફેરફારોને વધુ સારી રીતે હેન્ડલ કરી શકશે, અને Google Play પર સ્થિર આવક અને પોલિશ્ડ વપરાશકર્તા અનુભવ જાળવવાની તેમની પાસે ઘણી સારી તક હશે. માહિતી શેર કરો જેથી વધુ વપરાશકર્તાઓ આ વિષય વિશે જાણી શકે.