小编sgb*_*own的帖子

如何在退款后撤销 Android 应用内非消耗品购买权限?

我目前正在测试我的 Android 应用程序(应用程序内支付的许可测试),需要多次重复购买和退款项目来测试它。最后一次,在发放退款时,我不小心忘记选中 Play Developer Console 中的“撤销权利”框(由于某种原因,默认情况下未选中)。现在,我的应用程序版本始终具有权利,我无法再测试购买它。

我知道无法通过网站撤销权利。似乎有一种方法可以通过 API 调用来实现,但是我没有应用程序的后端设置,并且无法弄清楚如何通过我的浏览器/curl 成功调用该函数(总是认证错误)。我的应用程序似乎无法区分购买的权利或已退款但未撤销的权利(我的Purchase对象getPurchaseState()调用总是返回Purchase.PurchaseState.PURCHASED),所以我不知道是否可以通过应用程序的代码库撤销它.

有什么办法可以撤销授权吗?授权自己进行 API 调用的过程对我来说是完全不透明的,但如果我能理解,这似乎是一条可行的途径。

android in-app-billing google-play google-play-services google-play-developer-api

10
推荐指数
1
解决办法
478
查看次数

wxWidgets Sizers:如何让 sizers 在调整大小时正确运行

我目前正在学习在 Microsoft Visual Studio C++ 中使用 wxWidgets,并且我认为我已经了解了 Sizer 的概念。但是,我似乎无法让它们在调整大小时按照我想要的方式运行。我正在遵循一个教程(我似乎放错了链接,但它非常简单),其目的是创建一个带有可扩展文本框的对话框窗口,其下方有两个按钮应保持大致居中。我的窗口代码如下,可以在对话框窗口的构造函数中找到:

vertSizer = new wxBoxSizer(wxVERTICAL); // Create vertical (parent) sizer, will contain text box and child sizer
vertSizer->Add(
    new wxTextCtrl(this, -1, "My text", wxDefaultPosition, wxSize(100,80), wxTE_MULTILINE),
    1, // vertically stretchable
    wxEXPAND | wxALL, // horizontally stretchable, borders all around
    10); // Add text box to parent sizer

horizSizer = new wxBoxSizer(wxHORIZONTAL); // Make child sizer, will contain buttons
wxSizerFlags ButtonFlags(1); // Make controls stretch hoizontally (to cover entire sizer area)
ButtonFlags.Expand().Center().Border(wxALL,10); // …
Run Code Online (Sandbox Code Playgroud)

c++ user-interface wxwidgets

5
推荐指数
1
解决办法
3714
查看次数