Legacy GM IAP Problem

D

Dxnxex

Guest
Hello guys,

I have problem with my IAP.
If I test my app on Android device and try to guy some of my IAP ITEMS, this message appears "requested item is not available for purchase". I just do know what am I doing bad.

BUT real problem is, I do not change anything, because few days before it works normally and now not.(I hope I do not change anything in Google Play Dev Console or in game);

I have
-Test Account
-Activated items at Google Play

I don´t know if I forgot anything.


ID* = copied ITEM id from Google Play Dev Console.


///Create
var map_create = true;

if file_exists("iap_data.json")
{
global.purchaseMap = ds_map_secure_load("iap_data.json");

if ds_exists(global.purchaseMap, ds_type_map)
{

var product1s = "ID*";

if ds_map_exists(global.purchaseMap,product1s)
{

if ds_map_find_value(global.purchaseMap,product1s) == 1
{

IAP_Cards = 1;
map_create=false;

}
}


}
}


if map_create = true
{

global.purchaseMap = ds_map_create();

var product1 = "ID*";

ds_map_add(global.purchaseMap,product1,0);

ds_map_secure_save(global.purchaseMap,"iap_data.json")

}


var productList = ds_list_create();

product1c = ds_map_create();
ds_map_add(product1c, "id", "ID*");
ds_map_add(product1c, "title", "TEXT");
ds_map_add(product1c, "type", "Durable");
ds_list_add(productList, product1c);

iap_activate(productList);

ds_map_destroy(product1c);

ds_list_destroy(productList);

///IAP
var val = ds_map_find_value(iap_data, "type");

switch (val)
{

case iap_ev_purchase:
var map = ds_map_create();
var purchase_id = ds_map_find_value(iap_data, "index");
iap_purchase_details(purchase_id,map);

if ds_map_find_value(map, "status") = iap_purchased
{

var product_id = ds_map_find_value(map, "product");
ds_map_replace(global.purchaseMap, product_id, 1);

switch (product_id)
{

case "ID*":
IAP_Cards = 1;
break;

}
}
ds_map_destroy(map);
break;

}
ds_map_secure_save(global.purchaseMap, "iap_data.json");

var status = iap_status();
if status == iap_status_available
{
var product = "ID*";
if ds_map_find_value(global.purchaseMap, product) == 0
{
iap_acquire(product, "");
}
}
else
{
show_message_async("Store is not available.");
}

Thanks for HELP :)
 
S

Syncrom

Guest
Hello guys,

I have problem with my IAP.
If I test my app on Android device and try to guy some of my IAP ITEMS, this message appears "requested item is not available for purchase". I just do know what am I doing bad.

BUT real problem is, I do not change anything, because few days before it works normally and now not.(I hope I do not change anything in Google Play Dev Console or in game);

I have
-Test Account
-Activated items at Google Play

I don´t know if I forgot anything.


ID* = copied ITEM id from Google Play Dev Console.


///Create
var map_create = true;

if file_exists("iap_data.json")
{
global.purchaseMap = ds_map_secure_load("iap_data.json");

if ds_exists(global.purchaseMap, ds_type_map)
{

var product1s = "ID*";

if ds_map_exists(global.purchaseMap,product1s)
{

if ds_map_find_value(global.purchaseMap,product1s) == 1
{

IAP_Cards = 1;
map_create=false;

}
}


}
}


if map_create = true
{

global.purchaseMap = ds_map_create();

var product1 = "ID*";

ds_map_add(global.purchaseMap,product1,0);

ds_map_secure_save(global.purchaseMap,"iap_data.json")

}
var productList = ds_list_create();

product1c = ds_map_create();
ds_map_add(product1c, "id", "ID*");
ds_map_add(product1c, "title", "TEXT");
ds_map_add(product1c, "type", "Durable");
ds_list_add(productList, product1c);

iap_activate(productList);

ds_map_destroy(product1c);

ds_list_destroy(productList);
///IAP
var val = ds_map_find_value(iap_data, "type");

switch (val)
{

case iap_ev_purchase:
var map = ds_map_create();
var purchase_id = ds_map_find_value(iap_data, "index");
iap_purchase_details(purchase_id,map);

if ds_map_find_value(map, "status") = iap_purchased
{

var product_id = ds_map_find_value(map, "product");
ds_map_replace(global.purchaseMap, product_id, 1);

switch (product_id)
{

case "ID*":
IAP_Cards = 1;
break;

}
}
ds_map_destroy(map);
break;

}
ds_map_secure_save(global.purchaseMap, "iap_data.json");

var status = iap_status();
if status == iap_status_available
{
var product = "ID*";
if ds_map_find_value(global.purchaseMap, product) == 0
{
iap_acquire(product, "");
}
}
else
{
show_message_async("Store is not available.");
}

Thanks for HELP :)
Hello Dxnxex:

Have you solved the problem? I have the same problem !

Regards.
 
Top