مشکل Not allowed to bind to service Intent در پرداخت درون برنامه ای بازار
سلام به دوستان.
من میخوام پرداخت درون برنامه ای بازار رو پیاده سازی کنم. طبق مستندات پیش رفتم ولی وقتی اپ رو اجرا میکنم و میخوام وارد اکیتیویتی که درونش پرداخت رو پیاده کردم برم force close میده.
Logcat:
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: FATAL EXCEPTION: main
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: Process: my.package.name, PID: 3095
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{my.package.name/my.package.name.InAppBillingActivity}: java.lang.SecurityException: Not allowed to bind to service Intent { act=ir.cafebazaar.pardakht.InAppBillingService.BIN D pkg=com.farsitel.bazaar }
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2416)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2476)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.-wrap11(ActivityThread.java)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1344)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:10 2)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.os.Looper.loop(Looper.java:148)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.jav a:5417)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCa ller.run(ZygoteInit.java:726)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit .java:616)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: Caused by: java.lang.SecurityException: Not allowed to bind to service Intent { act=ir.cafebazaar.pardakht.InAppBillingService.BIN D pkg=com.farsitel.bazaar }
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ContextImpl.bindServiceCommon(ContextI mpl.java:1322)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ContextImpl.bindService(ContextImpl.ja va:1286)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.content.ContextWrapper.bindService(Context Wrapper.java:604)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at my.package.name.util.IabHelper.startSetup(IabHelpe r.java:269)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at my.package.name.InAppBillingActivity.onCreate(InAp pBillingActivity.java:46)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java:6 237)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(I nstrumentation.java:1107)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(A ctivityThread.java:2369)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(Ac tivityThread.java:2476)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.-wrap11(ActivityThread.java)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(Activit yThread.java:1344)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:10 2)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.os.Looper.loop(Looper.java:148)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.jav a:5417)
10-23 17:46:10.347 3095-3095/ E/AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
فعلا هم تو اپ اینجوری نوشتم که توی navigation drawer وقتی روی آیتم کلیک میکنی وارد اکتیویتی پرداخت میشه و داخل اون یه دکمه هست که وقتی میزنی عملیات پرداخت انجام میشه. (البته فعلا برای تست اینجوری نوشتم)
ممنون میشم راهنمایی کنید.
نقل قول: مشکل Not allowed to bind to service Intent در پرداخت درون برنامه ای بازار
مشکل حل شد.
مشکل مربوط به پریمشن بود. با اینکه پرمیشن تو مانیفست گرفته شده ولی به نظر میرسید اعمال نشده بود. رفتم توی App Info مربوط به اپ خودم و تو قسمت پرمیشنها گزینه payment through bazaar رو فعال کردم. نمیدونم چرا به طور پیش فرض فعال نیست. با اینکه اپ رو چندبار پاک و دوباره نصب کردم. اینم اشاره کنم که فعلا اپ رو فقط روی اندروید ام تست کردم. احتمالا روی نسخههای دیگه این مشکل پیش نیاد.
اگر دوستان میدونن چرا فعال نیست ممنون میشم کمک کنند.
ولی فعلا مشکلی که بالا بهش اشاره کردم حل شد.
نقل قول: مشکل Not allowed to bind to service Intent در پرداخت درون برنامه ای بازار
خب این مشکل واسه همه برنامه ها هست
خودمم دنبال این موضوع بودم
میتونید برنامه های مثل دیوار رو ببینید که اوناهم به همچین چیزی برمیخورن
نقل قول: مشکل Not allowed to bind to service Intent در پرداخت درون برنامه ای بازار
نقل قول:
مشکل مربوط به پریمشن بود. با اینکه پرمیشن تو مانیفست گرفته شده ولی به نظر میرسید اعمال نشده بود.
در مورد این پرمیشن اطلاعی ندارم ولی از اندروید 6 به بعد بعضی از پرمیشن ها رو باید موقع اجرا شدن برنامه از کاربر گرفت و نوشتنشون توی منیفست کفایت نمیکنه.
https://stackoverflow.com/questions/...est-permission
نقل قول: مشکل Not allowed to bind to service Intent در پرداخت درون برنامه ای بازار
وقتی بازار رو بعد از برنامه نصب کنی این مشکل پیدا میشه.