首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Android计费库?

如何使用Android计费库?
EN

Stack Overflow用户
提问于 2011-07-04 16:29:25
回答 1查看 2.8K关注 0票数 5

https://github.com/robotmedia/AndroidBillingLibrary

我创建了单独的计费类:

代码语言:javascript
复制
public class Billing extends AbstractBillingActivity {
    private static final String TAG = "Billing";

    public Billing() {
    }

    @Override
    public void onBillingChecked(boolean supported) {
        Log.i(TAG, "Billing supported: " + supported);
    }

一旦用户按下首选项中的按钮,我就会:

代码语言:javascript
复制
    Preference buyPref = (Preference) findPreference("pref_billing_buy");
    buyPref.setOnPreferenceClickListener(new OnPreferenceClickListener() {
        public boolean onPreferenceClick(Preference preference) {   
            if (Debug.Yes) Log.d(TAG, "Buying ad-free version");
            Billing billing = new Billing();
            billing.checkBillingSupported();

            return true;
        }
    });

并得到以下错误:

代码语言:javascript
复制
07-04 20:21:22.797: ERROR/AndroidRuntime(7172): FATAL EXCEPTION: main
07-04 20:21:22.797: ERROR/AndroidRuntime(7172): java.lang.NullPointerException
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.content.ContextWrapper.getPackageName(ContextWrapper.java:120)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at net.robotmedia.billing.BillingService.getActionForIntent(BillingService.java:76)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at net.robotmedia.billing.BillingService.createIntent(BillingService.java:69)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at net.robotmedia.billing.BillingService.checkBillingSupported(BillingService.java:58)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at net.robotmedia.billing.BillingController.checkBillingSupported(BillingController.java:114)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at net.robotmedia.billing.AbstractBillingActivity.checkBillingSupported(AbstractBillingActivity.java:42)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at spb.bridges.Preferences$1.onPreferenceClick(Preferences.java:212)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.preference.Preference.performClick(Preference.java:812)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.preference.PreferenceScreen.onItemClick(PreferenceScreen.java:198)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.widget.AdapterView.performItemClick(AdapterView.java:284)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.widget.ListView.performItemClick(ListView.java:3382)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.widget.AbsListView$PerformClick.run(AbsListView.java:1696)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.os.Handler.handleCallback(Handler.java:587)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.os.Handler.dispatchMessage(Handler.java:92)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.os.Looper.loop(Looper.java:144)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at android.app.ActivityThread.main(ActivityThread.java:4937)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at java.lang.reflect.Method.invokeNative(Native Method)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at java.lang.reflect.Method.invoke(Method.java:521)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
07-04 20:21:22.797: ERROR/AndroidRuntime(7172):     at dalvik.system.NativeStart.main(Native Method)

我的代码有什么问题?

另外,文件上说

启动

时,您的AbstractBillingActivity子类将检查是否支持应用程序内计费,然后调用onBillingChecked(布尔值),该调用必须由子类实现。

但实际上,onBillingChecked()并没有被调用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-06 16:56:01

我应该更仔细地阅读文件:

AbstractBillingActivity是一个抽象的活动,它提供了与应用程序内计费的默认集成。

因此,当我将代码extends Activity替换为extends AbstractBillingActivity时,它就开始工作了(实际上,由于我使用了PreferenceActivity,而不仅仅是Activity,我还必须编辑AbstractBillingActivity )。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6573973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档