我想在amazon上inapppurchasing的SamplepurchaseListener.java的onpurchaseresponse()中使用共享首选项

我想在amazon上inapppurchasing的SamplepurchaseListener.java的onpurchaseresponse()中使用共享首选项,java,android,in-app-purchase,sharedpreferences,amazon,Java,Android,In App Purchase,Sharedpreferences,Amazon,当案例成功时,我想编辑变量值,然后在项目的其他类中使用该值。 我怎么做? 请推荐我好吗 switch (status) { case SUCCESSFUL: SamplePurchasingListener.this.runOnUiThread(new Runnable() { @Override public void run() { // TODO Auto-generated

当案例成功时,我想编辑变量值,然后在项目的其他类中使用该值。 我怎么做? 请推荐我好吗

    switch (status) {
    case SUCCESSFUL:


        SamplePurchasingListener.this.runOnUiThread(new Runnable() {
            @Override
            public void run() {
                // TODO Auto-generated method stub
                SharedPreferences.Editor editor = getSharedPreferences(MY_PREFS_NAME, MODE_WORLD_READABLE).edit();
                editor.putBoolean("PREMIUM", true); // Storing boolean - true/false
                editor.commit();
            }
        });

        final Receipt receipt = response.getReceipt();
        iapManager.setAmazonUserId(response.getUserData().getUserId(), response.getUserData().getMarketplace());
        Log.d(TAG, "onPurchaseResponse: receipt json:" + receipt.toJSON());
        iapManager.handleReceipt(response.getRequestId().toString(), receipt, response.getUserData());
        iapManager.refreshLevel2Availability();

     break;
    case ALREADY_PURCHASED:


        Log.i(TAG,
              "onPurchaseResponse: already purchased, you should verify the entitlement purchase on your side and make sure the purchase was granted to customer");

        break;

如果您只想从另一个类中检索值,为什么不直接从首选项中获取它呢?大概是这样的:

SharedPreferences sp = getSharedPreferences(MY_PREFS_NAME, MODE_WORLD_READABLE);
boolean premium = sp.getBoolean("PREMIUM", false);
if(premium) { ...
若之前并没有存储值,方法将返回“false”。
可能我还没有理解您的问题。

我正在尝试这样做,但不幸的是,我没有得到调用pref.getboolean()的值。有什么建议吗?试着像这样初始化你的“pref:
SharedReferences pref=PreferenceManager.GetDefaultSharedReferences(getApplicationContext())也许,其他类,您试图在其中检索值,但不包含所需的上下文。谢谢您的建议。工作正常:)