[英]Intent is hijacking in app billing
我能够实现一个应用内结算处理器,并且在我不打算参加新活动的情况下可以正常测试。
但是,在客户支付了付费内容后,我希望自动运行新意图,从而启动新活动(带有付费内容的活动)。 但是,当我这样做时,意图超过了计费处理器,并切换为付费活动,而没有任何计费或付款。 我了解如何使用旨在启动新活动的按钮。 但是,另一个按钮将不起作用,因为这也是解决应用内结算的一种简便方法。
有什么建议可以解决这个粘性检票口吗? 非常感谢。 是的,这是我的第一个Android应用程序。 我敢肯定你可以告诉...
BillingProcessor bp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
bp = new BillingProcessor(this, "null", this);
Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
bp.purchase(MainActivity.this, "android.test.purchased");
//THE PROBLEM IS WHAT FOLLOWS: It overtakes .bp
startActivity(new Intent(MainActivity.this, paidstuff.class));
}
});
}
@Override
public void onProductPurchased(@NonNull String productId, @Nullable TransactionDetails details) {
Toast.makeText(this, "You just bought something great!", Toast.LENGTH_SHORT).show();
}
@Override
public void onPurchaseHistoryRestored() {
}
@Override
public void onBillingError(int errorCode, @Nullable Throwable error) {
}
@Override
public void onBillingInitialized() {
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (!bp.handleActivityResult(requestCode, resultCode, data)) {
super.onActivityResult(requestCode, resultCode, data);
}
}
@Override
public void onDestroy() {
if (bp != null) {
bp.release();
}
super.onDestroy();
}
}
你不能把
startActivity(new Intent(MainActivity.this, paidstuff.class));
内
@Override
public void onProductPurchased(@NonNull String productId, @Nullable TransactionDetails details) {
Toast.makeText(this, "You just bought something great!", Toast.LENGTH_SHORT).show();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.