当前位置: 首页 > 知识库问答 >
问题:

AndroidResource.get价值崩溃在我的谷歌播放开发控制台没有更多的信息

于嘉许
2023-03-14

所以我在Google Play上上传了一个Android应用程序,自从几天前我更新了它,我有36次崩溃,但我找不到它的来源。当我测试应用程序时,它不会崩溃。这是我在开发人员控制台中看到的错误的堆栈跟踪:

   android.content.res.Resources$NotFoundException:
at android.content.res.Resources.getValue (Resources.java:2598)
  at android.support.v7.widget.AppCompatDrawableManager.loadDrawableFromDelegates (AppCompatDrawableManager.java:331)
  at android.support.v7.widget.AppCompatDrawableManager.getDrawable (AppCompatDrawableManager.java:198)
  at android.support.v7.widget.AppCompatDrawableManager.getDrawable (AppCompatDrawableManager.java:191)
  at android.support.v7.content.res.AppCompatResources.getDrawable (AppCompatResources.java:102)
  at android.support.v7.view.menu.MenuItemImpl.getIcon (MenuItemImpl.java:505)
  at android.support.v7.view.menu.ActionMenuItemView.initialize (ActionMenuItemView.java:126)
  at android.support.v7.widget.ActionMenuPresenter.bindItemView (ActionMenuPresenter.java:211)
  at android.support.v7.view.menu.BaseMenuPresenter.getItemView (BaseMenuPresenter.java:188)
  at android.support.v7.widget.ActionMenuPresenter.getItemView (ActionMenuPresenter.java:197)
  at android.support.v7.widget.ActionMenuPresenter.flagActionItems (ActionMenuPresenter.java:477)
  at android.support.v7.view.menu.MenuBuilder.flagActionItems (MenuBuilder.java:1182)
  at android.support.v7.view.menu.BaseMenuPresenter.updateMenuView (BaseMenuPresenter.java:96)
  at android.support.v7.widget.ActionMenuPresenter.updateMenuView (ActionMenuPresenter.java:230)
  at android.support.v7.view.menu.MenuBuilder.dispatchPresenterUpdate (MenuBuilder.java:298)
  at android.support.v7.view.menu.MenuBuilder.onItemsChanged (MenuBuilder.java:1069)
  at android.support.v7.view.menu.MenuBuilder.startDispatchingItemsChanged (MenuBuilder.java:1096)
  at android.support.v7.app.AppCompatDelegateImpl.preparePanel (AppCompatDelegateImpl.java:1631)
  at android.support.v7.app.AppCompatDelegateImpl.doInvalidatePanelMenu (AppCompatDelegateImpl.java:1869)
  at android.support.v7.app.AppCompatDelegateImpl$2.run (AppCompatDelegateImpl.java:230)
  at android.os.Handler.handleCallback (Handler.java:739)
  at android.os.Handler.dispatchMessage (Handler.java:95)
  at android.os.Looper.loop (Looper.java:148)
  at android.app.ActivityThread.main (ActivityThread.java:7325)
  at java.lang.reflect.Method.invoke (Native Method)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1230)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1120)

在上一次更新中,我添加了一个新活动,该活动将打开一个屏幕,其中包含有关应用程序的更多信息,因此信息活动:

private TextView rateApp;
    private TextView contactUs;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_info);

        rateApp = findViewById(R.id.rateAppTv);
        contactUs = findViewById(R.id.sendEmailTv);
        rateApp.setMovementMethod(LinkMovementMethod.getInstance());
        rateApp.setPaintFlags(rateApp.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);
        contactUs.setPaintFlags(contactUs.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);

        contactUs.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent emailIntent = new Intent(Intent.ACTION_SENDTO);
                emailIntent.setData(Uri.parse("mailto:natasa.andzic1@gmail.com"));
                emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Rick and Morty soundboard app feedback");
                if (emailIntent.resolveActivity(getPackageManager()) != null)
                    startActivity(emailIntent);
            }
        });

        rateApp.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                openAppRating(InfoActivity.this);       }
        });
    }

    public static void openAppRating(Context context) {
        // you can also use BuildConfig.APPLICATION_ID
        String appId = context.getPackageName();
        Intent rateIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appId));
        boolean marketFound = false;

        // find all applications able to handle our rateIntent
        final List<ResolveInfo> otherApps = context.getPackageManager()
                .queryIntentActivities(rateIntent, 0);
        for (ResolveInfo otherApp: otherApps) {
            // look for Google Play application
            if (otherApp.activityInfo.applicationInfo.packageName.equals("com.android.vending")) {

                ActivityInfo otherAppActivity = otherApp.activityInfo;
                ComponentName componentName = new ComponentName(otherAppActivity.applicationInfo.packageName, otherAppActivity.name
                );
                // make sure it does NOT open in the stack of your activity
                rateIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                // task reparenting if needed
                rateIntent.addFlags(Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
                // if the Google Play was already open in a search result
                //  this make sure it still go to the app page you requested
                rateIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                // this make sure only the Google Play app is allowed to
                // intercept the intent
                rateIntent.setComponent(componentName);
                context.startActivity(rateIntent);
                marketFound = true;
                break;

            }
        }

        // if GP not present on device, open web browser
        if (!marketFound) {
            Intent webIntent = new Intent(Intent.ACTION_VIEW,
                    Uri.parse("https://play.google.com/store/apps/details?id="+appId));
            context.startActivity(webIntent);
        }
    }
}

activity_info.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@color/colorAccent"
    tools:context=".InfoActivity">

    <View
        style="@style/info_separator_style"
        android:background="@color/colorPrimaryLight" />

    <TextView
        android:id="@+id/rateTv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:textStyle="bold"
        android:layout_marginTop="20dp"
        android:text="Rate this app"
        android:textColor="#000000"
        android:textSize="36sp" />


    <TextView
        android:autoLink="web"
        android:textStyle="italic"
        android:id="@+id/rateAppTv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Click here"
        android:textColor="#000000"
        android:textSize="24sp" />
    <View
        android:layout_marginTop="20dp"
        style="@style/info_separator_style"
        android:background="@color/colorPrimaryLight" />

    <TextView
        android:layout_marginTop="20dp"
        android:layout_gravity="center"
        android:text="Contact us!"
        android:textStyle="bold"
        android:textSize="36sp"
        android:layout_width="wrap_content"
        android:textColor="#000000"
        android:layout_height="wrap_content" />

    <TextView
        android:layout_gravity="center"
        android:textSize="24sp"
        android:textColor="#000000"
        android:textStyle="italic"
        android:id="@+id/sendEmailTv"
        android:text="Click here to send us an email!"
        style="@style/RtlUnderlay.Widget.AppCompat.ActionButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <View
        android:layout_marginTop="20dp"
        style="@style/info_separator_style"
        android:background="@color/colorPrimaryLight" />

    <TextView
        android:layout_marginTop="20dp"
        android:layout_gravity="center"
        android:text="About"
        android:textStyle="bold"
        android:textSize="36sp"
        android:layout_width="wrap_content"
        android:textColor="#000000"
        android:layout_height="wrap_content" />

    <TextView
        android:layout_gravity="center"
        android:textSize="24sp"
        android:textColor="#000000"
        android:textStyle="italic"
        android:id="@+id/jaTv"
        android:text="Made by Nataša Andžić"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

    <View
        android:layout_marginTop="20dp"
        style="@style/info_separator_style"
        android:background="@color/colorPrimaryLight" />

    <TextView
        android:layout_marginTop="20dp"
        android:layout_gravity="center"
        android:text="Thanks"
        android:textStyle="bold"
        android:textSize="36sp"
        android:layout_width="wrap_content"
        android:textColor="#000000"
        android:layout_height="wrap_content" />

    <TextView
        android:layout_gravity="center"
        android:textSize="24sp"
        android:textColor="#000000"
        android:textStyle="italic"
        android:id="@+id/thanksTv"
        android:text="Icons - Material Design"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>

共有1个答案

谭景明
2023-03-14

问题是相关的绘图文件.如果你把任何你的绘图文件在绘图v24然后它会给一个错误在下面的API版本。

看这个答案也许对你有帮助

 类似资料:
  • 我已经发布了两个版本的我的应用程序apks到谷歌播放控制台。1.3、1.4) 但后来我意识到我上传的最新版本(1.4)中有一个小问题。所以现在我需要取消发布最新版本(1.4)并再次发布旧版本(1.3)。 我该怎么做?

  • 在google play控制台上更新应用程序时出错。我提供了正确的密钥和密码。但是仍然有错误。如何修复它?你能帮忙吗? 错误我在谷歌播放控制台 上载失败:您上载的APK未使用上载证书签名。您必须使用相同的证书。上载证书具有指纹:

  • 我上传了一个aab到play控制台,最后把它列在play商店里。这个应用程序是用Python和Kivy编写的,我能够通过首先运行Buildozer,然后通过Android Studio运行脚本,按照网络上的各种说明来生成aab。 我可以从aab生成的游戏控制台下载apk,它工作得很好。然而,当我从play store安装应用程序时,它一打开就关闭。然而,我没有得到真正的坠机报告。 这是我的第一个真

  • 我可以在崩溃报告中看到一些应用程序崩溃 我想知道的是,android是否总是收集关于崩溃的数据,或者用户是否需要手动报告崩溃,以便我能够在开发者控制台中查看崩溃报告?我已经看到几个应用程序在我的设备上崩溃,但我不记得有人要求我确认报告问题。

  • 我正在尝试向Google Play商店发布一个新的应用程序,我已经完成了Google Play控制台中要求的所有步骤,除了声明应用程序中是否有广告。 问题是当我去“应用内容- 设置在哪里? 更新这似乎只发生在火狐,在铬的选项显示

  • 我在(unity)应用程序启动期间发生崩溃,只有从Play Store下载应用程序时才会出现。我进行了大量测试,即使在一个空的Unity项目中,我也观察到了这次崩溃。 我有谷歌游戏Firebase 如果我在安装后立即清除应用的存储,崩溃就会消失。 崩溃发生在Android9上,但不是在Android5.1上。如果我在google play控制台上使用不同的项目加载相同的应用程序,则不会发生崩溃(尝