Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ResourceType For resource entry index is beyond type entryCount

I use Android Studio 3.2. When I clean/rebuild project I see these warnings in build tool window:

W/ResourceType( 6139): For resource 0x0101053d, entry index(1341) is beyond type entryCount(1155)
W/ResourceType( 6139): For resource 0x0101053e, entry index(1342) is beyond type entryCount(1155)
W/ResourceType( 6139): For resource 0x0101053b, entry index(1339) is beyond type entryCount(1155)
W/ResourceType( 6139): For resource 0x0101053c, entry index(1340) is beyond type entryCount(1155)

As you can see there is no address to any file to be checked out. I also try Google and saw this and this questions, but I could not find any thing that helps me. How I can solve this problem?

like image 523
hasanghaforian Avatar asked Oct 15 '18 04:10

hasanghaforian


1 Answers

To better understand your problem take your compiled APK. In it, there is a file called "resources.arsc". This is compressed and compiled resource file. To be able to read it run:

aapt dump --values resources myAPK.apk > c:\my-res.txt 

So now you'll have a text file with a description of all the resources in your app. In it, there are a lot of segments looking like this:

type 3 configCount=2 entryCount=5
  spec resource 0x7f040000 com.LTS.NVMS7000:bool/abc_action_bar_embed_tabs: flags=0x00000080
  spec resource 0x7f040001 com.LTS.NVMS7000:bool/abc_allow_stacked_button_bar: flags=0x00000000
  spec resource 0x7f040002 com.LTS.NVMS7000:bool/abc_config_actionMenuItemAllCaps: flags=0x00000000
  spec resource 0x7f040003 com.LTS.NVMS7000:bool/abc_config_closeDialogWhenTouchOutside: flags=0x00000000
  spec resource 0x7f040004 com.LTS.NVMS7000:bool/abc_config_showMenuShortcutsWhenKeyboardPresent: flags=0x00000000
  config (default):
    resource 0x7f040000 com.LTS.NVMS7000:bool/abc_action_bar_embed_tabs: t=0x12 d=0xffffffff (s=0x0008 r=0x00)
      (color) #ffffffff
    resource 0x7f040001 com.LTS.NVMS7000:bool/abc_allow_stacked_button_bar: t=0x12 d=0x00000000 (s=0x0008 r=0x00)
      (color) #00000000
    resource 0x7f040002 com.LTS.NVMS7000:bool/abc_config_actionMenuItemAllCaps: t=0x12 d=0xffffffff (s=0x0008 r=0x00)
      (color) #ffffffff
    resource 0x7f040003 com.LTS.NVMS7000:bool/abc_config_closeDialogWhenTouchOutside: t=0x12 d=0xffffffff (s=0x0008 r=0x00)
      (color) #ffffffff
    resource 0x7f040004 com.LTS.NVMS7000:bool/abc_config_showMenuShortcutsWhenKeyboardPresent: t=0x12 d=0x00000000 (s=0x0008 r=0x00)
      (color) #00000000
  config port:
    resource 0x7f040000 com.LTS.NVMS7000:bool/abc_action_bar_embed_tabs: t=0x12 d=0x00000000 (s=0x0008 r=0x00)
      (color) #00000000

In this section, you can see there are 2 configurations and 5 entries expected. What you should do to get a hint of what's going on is to look for example at:

resource 0x0101053d

That appears in your log and see where is in the section. It should give you a hint of what resource group in your app is causing it. I would guess you are linking with a package that is very old and so the compiler is not linking the resources of that package properly to your app because they are intended for different Android SDK versions for example. I'm sorry that I can't help much more.

If you have more info leave a comment for this answer and I'll try to help.

like image 180
Itamar Kerbel Avatar answered Oct 25 '22 09:10

Itamar Kerbel