Привет всем! Подключаю покупки внутри приложение с помощью библиотеки anjlab/android-inapp-billing-v3.
Я немного запутался, может кто сможет помочь с этим вопросом.
Я имею код:
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.anjlab.android.iab.v3.BillingProcessor;
import com.anjlab.android.iab.v3.TransactionDetails;
public class donate_screen extends AppCompatActivity implements BillingProcessor.IBillingHandler {
final String TAG = "States";
String licenceKey = "LICENCE KEY";
BillingProcessor bp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.donate_screen); //назначаем layout (внешний вид)
bp = new BillingProcessor(this, licenceKey, this);
Button stop_ads = (Button) findViewById(R.id.stop_ads);
Button donate_one = (Button) findViewById(R.id.donate_one);
Button donate_two = (Button) findViewById(R.id.donate_two);
Button donate_three = (Button) findViewById(R.id.donate_three);
Button donate_four = (Button) findViewById(R.id.donate_four);
Button donate_five = (Button) findViewById(R.id.donate_five);
stop_ads.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick (View view) {
bp.purchase(donate_screen.this, "eng_stop_ads");
}
});
donate_one.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick (View view) {
bp.purchase(donate_screen.this, "purchase1");
}
});
donate_two.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick (View view) {
bp.purchase(donate_screen.this, "purchase2");
}
});
donate_three.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick (View view) {
bp.purchase(donate_screen.this, "purchase3");
}
});
donate_four.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick (View view) {
bp.purchase(donate_screen.this, "purchase4");
}
});
donate_five.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick (View view) {
bp.purchase(donate_screen.this, "purchase5");
}
});
Log.d(TAG, "donate: onCreate()");
}
@Override
protected void onRestart() {
super.onRestart();
Log.d(TAG, "donate: onRestart()");
}
@Override
protected void onStart() {
super.onStart();
Log.d(TAG, "donate: onStart()");
}
@Override
protected void onResume() {
super.onResume();
Log.d(TAG, "donate: onResume()");
}
@Override
protected void onPause() {
super.onPause();
Log.d(TAG, "donate: onPause()");
}
@Override
protected void onStop() {
super.onStop();
Log.d(TAG, "donate: onStop()");
}
@Override
public void onProductPurchased(@NonNull String productId, @Nullable TransactionDetails details) {
Toast.makeText(this, "Вы приобрели продукт!", Toast.LENGTH_SHORT).show();
bp.consumePurchase("purchase1");
bp.consumePurchase("purchase2");
bp.consumePurchase("purchase3");
bp.consumePurchase("purchase4");
bp.consumePurchase("purchase5");
}
@Override
public void onPurchaseHistoryRestored() {
}
@Override
public void onBillingError(int errorCode, @Nullable Throwable error) {
Toast.makeText(this, "Что-то пошло не так.", Toast.LENGTH_SHORT).show();
}
@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();
}
}
Этот код находится в активити с покупками. Мне необходимо с этого кода передать команду
bp.isPurchased("eng_stop_ads")
,которая передаёт булевое значение, в главное активити (MainScreen.java), где у меня инициализируется реклама.
Необходимо этого для того, чтобы платно отключать рекламу
Команду проверки булевого значения необходимо передать в :
Appodeal.setSegmentFilter("purchase", bp.isPurchased("eng_stop_ads"));
Никак не могу вдуплить как это сделать. Может кто работал с этой библиотекой и сможет подсказать.
Помогите по братски, я новенький, уже голова кипит)
Спасибо)