Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

这里提一个测试bug(很棒,简单改一下在windows上使用了) #3

Closed
githubXiaowangzi opened this issue May 26, 2021 · 6 comments

Comments

@githubXiaowangzi
Copy link

个别APP全部native后,使用APP时个别操作会异常闪退
如出现如下错误,apk下载地址:https://wwi.lanzoui.com/irqGTpi3fja

java.lang.ExceptionInInitializerError
at org.jf.smali.Smali.assembleSmaliFile(Native Method)
at org.jf.smali.Smali.assembleSmaliFile(Native Method)
at com.signs.yowal.SignatureTool.processDex(Native Method)
at com.signs.yowal.SignatureTool.Kill(Native Method)
at com.signs.yowal.MainActivity$100000002.run(Native Method)
Caused by: java.lang.StringIndexOutOfBoundsException: length=1; index=1
at java.lang.String.charAt(Native Method)
at org.jf.smali.smaliFlexLexer.zzUnpackAction(Native Method)
at org.jf.smali.smaliFlexLexer.zzUnpackAction(Native Method)
at org.jf.smali.smaliFlexLexer.(Unknown Source:54)
... 5 more
java.lang.StringIndexOutOfBoundsException: length=1; index=1
at java.lang.String.charAt(Native Method)
at org.jf.smali.smaliFlexLexer.zzUnpackAction(Native Method)
at org.jf.smali.smaliFlexLexer.zzUnpackAction(Native Method)
at org.jf.smali.smaliFlexLexer.(Unknown Source:54)
at org.jf.smali.Smali.assembleSmaliFile(Native Method)
at org.jf.smali.Smali.assembleSmaliFile(Native Method)
at com.signs.yowal.SignatureTool.processDex(Native Method)
at com.signs.yowal.SignatureTool.Kill(Native Method)
at com.signs.yowal.MainActivity$100000002.run(Native Method)

@maoabc
Copy link
Owner

maoabc commented May 26, 2021

嗯,我看看

@githubXiaowangzi
Copy link
Author

原app地址:https://wwi.lanzoui.com/i3a3bpidamd

@maoabc
Copy link
Owner

maoabc commented May 27, 2021

修复了,你试试,应该没问题了。

@maoabc
Copy link
Owner

maoabc commented May 27, 2021

因为原来的
ZZ_ACTION_PACKED_0 = "\10\0\1\1\1\2\2\3\1\2\4\3\1\4\2\1";第二个字符为\0,如果按utf-8处理会被认为字符串被终止了, 需要使用modified utf-8 把\0用0xc0和0x80代替,而且NewStringUTF也是接收modified utf8的。

@maoabc
Copy link
Owner

maoabc commented May 27, 2021

用原apk测试下,发现引起其他问题了,我再去找下原因

@githubXiaowangzi
Copy link
Author

测试了一下,除了速度变慢了一拍,应该没啥大问题了

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants