mobile-buy-sdk-android: NoSuchMethodError

My code

        GraphClient graphClient = GraphClient.builder(getActivity())
                .shopDomain("https://myshopname.myshopify.com")
                .accessToken("9c89f54**************4622321421421421)
                .httpCache(new File(getContext().getCacheDir(), "/http"), 10 * 1024 * 1024) // 10mb for http cache
                .defaultHttpCachePolicy(HttpCachePolicy.CACHE_FIRST.expireAfter(5, TimeUnit.MINUTES)) // cached response valid by default for 5 minutes
                .build();
        Storefront.QueryRootQuery query = Storefront.query(rootQuery ->
                rootQuery
                        .shop(shopQuery ->
                                shopQuery
                                        .name()
                        )
        );

        QueryGraphCall call = graphClient.queryGraph(query);

        call.enqueue(new GraphCall.Callback<Storefront.QueryRoot>() {

            @Override public void onResponse(@NonNull GraphResponse<Storefront.QueryRoot> response) {
                String name = response.data().getShop().getName();
                Toast.makeText(getContext(),name,Toast.LENGTH_SHORT).show();
            }

            @Override public void onFailure(@NonNull GraphError error) {
                Log.e(TAG, "Failed to execute query", error);
            }
        });

Error code

p E/UncaughtException: java.lang.NoSuchMethodError: No static method com_shopify_buy3_GraphClient$$Lambda$1_lambda$new$0(Ljava/lang/Runnable;)Ljava/lang/Thread; in class Lcom/shopify/buy3/GraphClient; or its super classes (declaration of 'com.shopify.buy3.GraphClient' appears in /data/app/com.midhilaj.ss-1/base.apk:classes2.dex)
                                                                              at com.shopify.buy3.GraphClient$$Lambda$1.newThread(Unknown Source)
                                                                              at java.util.concurrent.ThreadPoolExecutor$Worker.<init>(ThreadPoolExecutor.java:602)
                                                                              at java.util.concurrent.ThreadPoolExecutor.addWorker(ThreadPoolExecutor.java:916)
                                                                              at java.util.concurrent.ThreadPoolExecutor.ensurePrestart(ThreadPoolExecutor.java:1582)
                                                                              at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(ScheduledThreadPoolExecutor.java:313)
                                                                              at java.util.concurrent.ScheduledThreadPoolExecutor.schedule(ScheduledThreadPoolExecutor.java:533)
                                                                              at java.util.concurrent.ScheduledThreadPoolExecutor.execute(ScheduledThreadPoolExecutor.java:625)
                                                                              at com.shopify.buy3.RealGraphCall.enqueue(RealGraphCall.java:165)
                                                                              at com.shopify.buy3.RealGraphCall.enqueue(RealGraphCall.java:149)
                                                                              at com.midhilaj.ss.admin.AdminPageAddNews.onCreateView(AdminPageAddNews.java:93)
                                                                              at android.support.v4.app.Fragment.performCreateView(Fragment.java:2239)
                                                                              at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1332)
                                                                              at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1574)
                                                                              at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1641)
                                                                              at android.support.v4.app.BackStackRecord.executeOps(BackStackRecord.java:794)
                                                                              at android.support.v4.app.FragmentManagerImpl.executeOps(FragmentManager.java:2415)
                                                                              at android.support.v4.app.FragmentManagerImpl.executeOpsTogether(FragmentManager.java:2200)
                                                                              at android.support.v4.app.FragmentManagerImpl.optimizeAndExecuteOps(FragmentManager.java:2153)
                                                                              at android.support.v4.app.FragmentManagerImpl.execSingleAction(FragmentManager.java:2034)
                                                                              at android.support.v4.app.BackStackRecord.commitNowAllowingStateLoss(BackStackRecord.java:651)
                                                                              at android.support.v4.app.FragmentPagerAdapter.finishUpdate(FragmentPagerAdapter.java:143)
                                                                              at android.support.v4.view.ViewPager.populate(ViewPager.java:1239)
                                                                              at android.support.v4.view.ViewPager.populate(ViewPager.java:1087)
                                                                              at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1613)
                                                                              at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083)
                                                                              at android.support.design.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:713)
                                                                              at android.support.design.widget.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:90)
                                                                              at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:1389)
                                                                              at android.support.design.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:783)
                                                                              at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083)
                                                                              at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
                                                                              at android.support.v7.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:139)
                                                                              at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083)
                                                                              at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464)
                                                                              at android.widget.LinearLayout.measureVertical(LinearLayout.java:758)
                                                                              at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
                                                                              at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083)
                                                                              at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
                                                                              at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083)
                                                                              at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1464)
                                                                              at android.widget.LinearLayout.measureVertical(LinearLayout.java:758)
                                                                              at android.widget.LinearLayout.onMeasure(LinearLayout.java:640)
11-02 18:17:55.996 3968-3968/com.midhilaj.ss E/UncaughtException:     at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6083)
                                                                              at android.widget.FrameLayout.onMeasure(FrameLayout.java:185)
                                                                              at com.android.internal.policy.DecorView.onMeasure(DecorView.java:689)
                                                                              at android.view.View.measure(View.java:19857)
                                                                              at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2275)
                                                                              at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1366)
                                                                              at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1619)
                                                                              at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1254)
                                                                              at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:6337)
                                                                              at android.view.Choreographer$CallbackRecord.run(Choreographer.java:874)
                                                                              at android.view.Choreographer.doCallbacks(Choreographer.java:686)
                                                                              at android.view.Choreographer.doFrame(Choreographer.java:621)
                                                                              at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
                                                                              at android.os.Handler.handleCallback(Handler.java:751)
                                                                              at android.os.Handler.dispatchMessage(Handler.java:95)
                                                                              at android.os.Looper.loop(Looper.java:154)
                                                                              at android.app.ActivityThread.main(ActivityThread.java:6119)
                                                                              at java.lang.reflect.Method.invoke(Native Method)
                                                                              at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
                                                                              at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 19 (12 by maintainers)

Most upvoted comments

hi@henrytao.me It is publicly showed on my profile.

@Midhilaj Regarding to reset or revoke API key:

  • You can not revoke API key for Mobile App.
  • You can create new API key for Mobile App in this url https://[your-store].myshopify.com/admin/settings/storefront_access_tokens. However, the old API key is still available to access your store.
  • However, if you delete / remove Mobile App in Sales Channels, all API keys will be eliminated.
  • Do you notice below banner in Mobile App? image

=> Here is what I recommend you to do:

  • Delete the file on ibb.co now.
  • Delete Mobile App in Sales Channels. So, old API keys can not be used to access your store.
  • Create new private app with StoreFront API scope (see picture below).
  • Now, you will be able to obtain new API key. image

I hope it helps.