чтобы вызвать метод onActivityResult()
, необходимо убедиться, что requestCode соответствует requestCode (например, здесь YOUR_REQUEST_CODE ), используемому в PreapprovalIntent:
Intent preapproveIntent = PayPal.getInstance().preapprove(
preapproval, getBaseContext());
preapproveIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivityForResult(preapproveIntent, YOUR_REQUEST_CODE);
, поэтому в вашем onActivityResult () у вас должно быть что-то вроде:
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (resultCode) {
case Activity.RESULT_OK:
if (requestCode == YOUR_REQUEST_CODE) {
Log.i("RESULT", "IT WORKS");
}
break;
default:
break;
}
}
это должно работать, но у меня действительно была проблема с результатами Activity: вместо вызова Activity.RESULT_OK , мой код вызывает Activity.RESULT_CANCELED in onActivityResult()
.Что действительно странно, так как я уверен, что мой процесс предварительного утверждения работает.Это даже странно, так как код onActivityResult()
вызывается, как только отображается активность PayPal.
Извините, что говорю вам об этом, но API и документация PayPals - беспорядок.Если у некоторых из вас возникла такая же проблема, пожалуйста, дайте мне знать, как вы ее решили (если вы ее решили; -))