Private Sub mnuInAppBilling_Click
MyStore.RequestPayment(Product_1year)
End Sub
Private Sub MyStore_PurchaseCompleted (Success As Boolean, Product As Purchase)
Dim PurchaseTime As Long
Dim mp As Map
mp.Initialize
Log("Success = " & Success)
If Success Then
If Product.IsInitialized Then
Log("Product: " & Product.ProductIdentifier & ", date=" & DateTime.Time(Product.TransactionDate) & _
", Transaction identifier=" & Product.TransactionIdentifier)
Select Product.ProductIdentifier
Case Product_1year
mp.Put(Product_1year, Product.TransactionDate)
PurchaseTime = DateTime.Add(Product.TransactionDate,1,0,0)
Case Product_1month
mp.Put(Product_1month, Product.TransactionDate)
PurchaseTime = DateTime.Add(Product.TransactionDate,0,1,0)
End Select
SavLizenzFileMap(mp, PurchaseTime)
End If
End If
End Sub
Private Sub GetOwnedProductsOffline
Dim PurchaseTime As Long
Dim mp As Map
mp.Initialize
If Not(File.Exists(File.DirLibrary, "Cache\lizenz.txt")) Then Return
mp = File.ReadMap(File.DirLibrary, "Cache\lizenz.txt")
If mp.ContainsKey(Product_1year) Then
PurchaseTime = DateTime.Add(mp.Get(Product_1year),1,0,0)
If DateTime.Now > PurchaseTime Then
mp.Remove(Product_1year)
ShowMessageLizenzExpired(Product_1year)
End If
else If mp.ContainsKey(Product_1month) Then
PurchaseTime = DateTime.Add( mp.Get(Product_1month),0,1,0)
If DateTime.Now > PurchaseTime Then
mp.Remove(Product_1month)
ShowMessageLizenzExpired(Product_1month)
End If
End If
SavLizenzFileMap(mp, PurchaseTime)
End Sub
Private Sub SavLizenzFileMap(mp As Map, PurchaseTime As Long)
If mp.Size > 0 Then
File.WriteMap(File.DirLibrary, "Cache\lizenz.txt", mp)
lizenzday = (PurchaseTime - DateTime.Now) / DateTime.TicksPerDay
IsLicensevalid = True
Else
IsLicensevalid = False
File.Delete(File.DirLibrary, "Cache\lizenz.txt")
End If
End Sub
Private Sub ShowMessageLizenzExpired(ProductId As String)
CallSubDelayed2(Me, "ShowMessage", ProductId)
Return
End Sub
Private Sub ShowMessage(ProductId As String)
Select ProductId
Case Product_1year
Msgbox(mLanguage.getStr("strYearLicenseExpired"), mLanguage.getStr("strLicenseExpired"))
Case Product_1month
Msgbox(mLanguage.getStr("strMonthLicenseExpired"), mLanguage.getStr("strLicenseExpired"))
End Select
End Sub