当涉及信用卡时,各种在线服务对于最大到期年份具有不同的值.
例如:
这里的合理最大值是多少?有官方指导方针吗?
直到2016年6月20日,我才能取消在我的应用程序中完成的测试购买.从同一个测试帐户进行多个应用程序内购买(非消费品),可以轻松开发和测试代码,而不需要太多的麻烦.
2016年6月20日之后,我的商家帐户中没有显示购买,我无法从我的测试帐户购买超过1次.我得到的只是:"你已经拥有这个项目"的消息.
我向google开发人员支持小组记录了一个请求,答案是:
从2016年6月20日开始,我们更改了一次性应用内购买(IAP)的测试购买.以前,测试购买一次性IAP会生成订单ID.从2016年6月20日开始,一次性IAP不会生成正式订单ID(如果有的话),也不会出现在Merchant Center中.此行为已适用于订阅IAP.您可以在Android开发者帮助中心了解有关测试应用内结算的详情:https://developer.android.com/google/play/billing/billing_testing.html#testing-purchases
好吧..所以我去了上面提到的链接,并在那里有一个部分: 取消已完成的测试购买 ,其中说明:
Google Play会为每个用户累积完成的测试购买,但不会将其传递给财务处理.在某些情况下,您可能希望手动取消测试购买以继续测试.为此,请在Play商店中打开应用页面.如果要取消的测试购买是订阅,您还可以使用Purchases.subscriptions API的cancel()方法.重要提示:Purchases.subscriptions API的refund()和revoke()方法不支持测试购买.
所以我去Play商店的应用页面......然后做到了什么?网页没有说明我应该在那里做什么.谁都知道?
它确实说: 你也可以使用Purchases.subscriptions API的cancel()方法.
这表明使用cancel()方法不是唯一的方法.
如何解决这个问题而不在我的应用中添加额外的代码?
我在读在谷歌App Engine的群体很多用户(FIG1,Fig2,图三)不能找出其中的大量数据存储的读取他们的帐单报告从何而来.
您可能知道,数据存储读取的上限为每天50K操作,高于您必须支付的预算.
50K操作听起来像很多资源,但不幸的是,似乎每个操作(Query,Entity fetch,Count ..)都隐藏了几个数据存储读取.
是否有可能通过API或一些其他方法来知道,有多少数据存储读取背后都隐藏着共同的RPC.get,RPC.runquery呼吁?
在这种情况下,Appstats似乎没用,因为它只提供RPC细节而不是隐藏的读取成本.
有这样一个简单的模型:
class Example(db.Model):
foo = db.StringProperty()
bars= db.ListProperty(str)
Run Code Online (Sandbox Code Playgroud)
和数据存储区中的1000个实体,我对这些操作的成本感兴趣:
items_count = Example.all(keys_only = True).filter('bars=','spam').count()
items_count = Example.all().count(10000)
items = Example.all().fetch(10000)
items = Example.all().filter('bars=','spam').filter('bars=','fu').fetch(10000)
items = Example.all().fetch(10000, offset=500)
items = Example.all().filter('foo>=', filtr).filter('foo<', filtr+ u'\ufffd')
Run Code Online (Sandbox Code Playgroud) google-app-engine rpc profiling billing google-cloud-datastore
在实际显示应用内购买的Android市场前端之前,如何检索应用内结算项目的价格?目前看起来用户只能在购买对话框中找到应用内商品的价格,并且我希望避免将所有支持货币的价格存储在应用程序中.
我在我的Android应用程序中实现应用程序计费时遇到问题.我收到购买签名验证失败.在第一次我很难,它是base64键,但我检查了很多次,我仍然得到错误,然后我看了一下Security.java文件,我发现我编辑的这个方法获取一些信息关于什么是错的:
public static boolean verifyPurchase(String base64PublicKey, String signedData, String signature) {
if (TextUtils.isEmpty(signedData) || TextUtils.isEmpty(base64PublicKey) ||
TextUtils.isEmpty(signature)) {
if(TextUtils.isEmpty(signedData)) Log.d(TAG, "SIGNED DATA EMPTY");
if(TextUtils.isEmpty(base64PublicKey)) Log.d(TAG, "KEY IS EMPTY");
if(TextUtils.isEmpty(signature)) Log.d(TAG, "SIGNATURE IS EMPTY");
Log.e(TAG, "Purchase verification failed: missing data.");
return false;
}
PublicKey key = Security.generatePublicKey(base64PublicKey);
return Security.verify(key, signedData, signature);
}
Run Code Online (Sandbox Code Playgroud)
我得到"签名是空的".即使我按照以下步骤操作: - 使用我的发布密钥设置apk - 将其作为草稿添加 - 在设备上安装"adb -d install app.apk"
我正在测试真实购买.谢谢.
编辑购买流程很好,我打电话时收到错误queryInventoryAsync
android billing in-app-purchase in-app-billing android-billing
我已经建立了一个带有订阅的SaaS网站,由外部支付处理器(可能是Stripe,Braintree,Paddle等)启用.
现在,我的SaaS网站已经打包成一个小WebView包装器,即将作为Android应用程序发布.但是在Stripe网站上,我发现了这个:
Google的开发者条款要求与应用相关的购买(例如高级功能或赠送金额)是通过其原生的应用内结算API进行的.
深入了解Google Play的条款,你可以找到这个(强调我的):
- 在Google Play上下载的游戏中提供产品或提供游戏内容访问权限的开发者必须使用Google Play应用内结算作为付款方式.
- 在Google Play上下载的另一类应用中提供产品的开发者必须使用Google Play应用内结算作为付款方式,但以下情况除外:
- 付款仅适用于实体产品
- 付款是针对可能在应用程序本身之外消费的数字内容(例如可以在其他音乐播放器上播放的歌曲)
- https://play.google.com/intl/zh-CN/about/monetization-ads/
所以这似乎比Stripe的解释更宽松,而且由于我的SaaS不是游戏,也可以通过通用网络浏览器使用,我的理解是使用外部支付处理器代替Google Play的计费是好的.
一方面,这意味着大多数数字服务都可以避免谷歌播放的计费并使用其他东西,这对谷歌来说似乎太公平了.另一方面,这不包括游戏,谷歌可以从中产生大量收入,因此它可能再次合理.
这不是一个法律问题,无论如何,答案都不能在法律文献中找到,也不能通过询问律师.相反,根据对上述条款的解释,是否允许使用外部支付处理器完全由谷歌自行决定.
因此,我正在寻找实际指南和实际使用示例,而不是法律建议,以支持对上述术语的任何解释.
我发现的一个例子是Dropbox:在Android上下载了他们的应用程序后,Dropbox允许我在两种付款方式之间进行选择:Google Play或Dropbox自己网站上的借记卡.这似乎支持对Google Play条款的更宽松的解释.
另一个例子是Spotify,它打开一个WebView,您可以从多个付款选项中进行选择,其中没有一个是Google Play.该应用程序仍然拥有Android的应用内购买权限,这也在Play商店中公开,因此他们可能只在特定国家/地区使用Google的应用内结算.
还有其他现实世界的例子吗?
我正在创建一个Android应用程序,在我的后端服务器上实现对数字内容的订阅.我想要做的是获取与购买Play帐户相关联的姓名和电子邮件,即我访问我的商家帐户并查看订单时可以获得的相同信息.
使用TrivialDrive应用内结算示例,我可以访问INAPP_PURCHASE_DATA并将该信息发送到我的后端服务器,因为"检查订阅文档"建议:http://developer.android.com/google/play/billing/ V2/billing_subscriptions.html
该文档列出了典型的实施工作流程,并说:
当用户成功购买新订阅时,您的应用会通知后端服务器,后端服务器将购买令牌,用户名和其他信息存储在安全位置.
虽然我可以存储购买令牌,但其他INAPP_PURCHASE_DATA如何获取用户名或电子邮件.从我可以编写的内容开始,我怀疑必须从我的后端服务器请求帐户详细信息,如用户名,电子邮件,订阅到期日期.似乎在我的后端服务器上使用购买令牌是访问订单信息的关键,但此时我还没有找到任何明确的方法去做这件事.
任何建议,将不胜感激.问候
我不知道这是不是正确的地方,但我假设MSFT工作人员也回答了这些问题,因为天蓝色门户链接到StackOverflow?
问题:
很抱歉问这些问题.尽我所能去谷歌,我所能找到的只是Scott Gu的一篇文章,他说VM不会被收费,而且除此之外的细节很少.
我已在我的应用中实施了应用内结算 - 最近谷歌已对其进行了更新,之前我正在测试应用内结算"android.test.purchased"并且工作正常(购买完整版和恢复完整版).
现在我从这里接受了更改的课程 https://code.google.com/p/marketbilling/source/detail?r=7bc191a004483a1034b758e1df0bda062088d840
之后,我无法测试应用程序,它在Logcat中给出以下错误 "IabHelper: In-app billing error: Purchase signature verification FAILED for sku android.test.purchased
".
我已经检查了我的密钥,包名和app版本都是正确的,有没有人遇到过这个问题?
请帮我解决一下这个.
android billing in-app-purchase in-app-billing android-billing
我有2个azure subsription.今天,我发现突然2000卢比.从我的一个替代品中解脱出来.当我开始调查已经消耗了最大单位的资源时,我在预览门户网站上发现特定的资源指导已经吃掉了最大数量.但我想知道哪个Azure资源(例如VM或SQL DB等)或哪个accout用户(创建该资源的用户的登录ID)正在吃这个数量.
还有一件事,我发现这种突然成本削减的事情几乎在同一天剩下大约13到14天的订阅.所以在每3周之后还有任何计费周期或者类似的东西吗?
billing ×10
android ×6
azure ×2
in-app ×2
credit-card ×1
date ×1
google-play ×1
max ×1
profiling ×1
rpc ×1