/// <summary> /// Gets the purchasable item with the given <c>productId</c>. /// </summary> /// <param name="productId">Product id.</param> /// <returns>Purchasable virtual item with the given id.</returns> /// <exception cref="VirtualItemNotFoundException">Exception is thrown if item is not found.</exception> override protected PurchasableVirtualItem _getPurchasableItemWithProductId(string productId) { VirtualItem vi = null; AndroidJNI.PushLocalFrame(100); using (AndroidJavaObject jniVirtualItem = AndroidJNIHandler.CallStatic <AndroidJavaObject>( new AndroidJavaClass("com.soomla.store.data.StoreInfo"), "getPurchasableItem", productId)) { vi = VirtualItem.factoryItemFromJNI(jniVirtualItem); } AndroidJNI.PopLocalFrame(IntPtr.Zero); return((PurchasableVirtualItem)vi); }
/// <summary> /// Fetches the virtual goods of your game. /// </summary> /// <returns>All virtual goods.</returns> override protected List <VirtualGood> _getVirtualGoods() { List <VirtualGood> virtualGoods = new List <VirtualGood>(); AndroidJNI.PushLocalFrame(100); using (AndroidJavaObject jniVirtualGoods = new AndroidJavaClass("com.soomla.store.data.StoreInfo").CallStatic <AndroidJavaObject>("getGoods")) { for (int i = 0; i < jniVirtualGoods.Call <int>("size"); i++) { AndroidJNI.PushLocalFrame(100); using (AndroidJavaObject jniGood = jniVirtualGoods.Call <AndroidJavaObject>("get", i)) { virtualGoods.Add((VirtualGood)VirtualItem.factoryItemFromJNI(jniGood)); } AndroidJNI.PopLocalFrame(IntPtr.Zero); } } AndroidJNI.PopLocalFrame(IntPtr.Zero); return(virtualGoods); }