我已经实现了应用内结算v3,我想要一种保留某种包含3列的表的方法
(String)product的名称,(String)sku,(boolean)true / false
最好的方法是什么? (在我看来)最好的方法是允许我保留一个静态易读的值列表,其中前两个是字符串,第三个是布尔值。在开始时,布尔列的所有值都是false,但是当我查询购买时,我可以轻松地重置该值。
添加,
我反对SQLite数据库,因为它们太容易被攻击了。我宁愿在代码中创建它,因此我在arraylist或矩阵中的ArrayList或类似的东西之间进行辩论:
private static class CatalogEntry {
public String sku;
public String name;
public CatalogEntry(String sku, String name) {
this.sku = sku;
this.name = name;
}
}
private static final CatalogEntry[] CATALOG = new CatalogEntry[] {
new CatalogEntry("android.test.purchased", "Item1"),
new CatalogEntry("android.test.canceled", "Item2"),
new CatalogEntry("android.test.refunded", "Item3"),
new CatalogEntry("android.test.item_unavailable", "Item4")
};
如果我添加第三列,有没有办法重置CATALOG数组中的值,否则我正在考虑使用它和标准的arraylists。
答案 0 :(得分:0)
将sqlite与四列一起使用:
购买时,只需连接sku,name,purchaseDate,device-id和PSK,制作md5Hash并将其与行中的其他数据一起存储。检查表的内容时,将存储的md5与数据进行比较,然后可以验证购买是否有效,或者表是否已被篡改。您甚至可以让用户将购买表备份到SD卡(或使用Android备份)。