Skip to content

找不到MainActivity #9

New issue

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

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

Already on GitHub? # to your account

Open
fishlovestoeatcat opened this issue Sep 1, 2016 · 16 comments
Open

找不到MainActivity #9

fishlovestoeatcat opened this issue Sep 1, 2016 · 16 comments
Labels

Comments

@fishlovestoeatcat
Copy link

fishlovestoeatcat commented Sep 1, 2016

我已经写了-just activity asia.bluepay.best.pay.MainActivity,关闭了instant run,gradle版本是2.1.0,在坚果1上测试MainActivity没有打进主dex包中,如果单保留MainActivity.class,MainActivity中的内部类找不到

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 只有坚果手机这样么? gradle换成1.5.0试试

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 或者把你的分包配置信息和错误日志发来看看

@fishlovestoeatcat
Copy link
Author

#-----------主Dex中必要依赖的脚本配置-----------
#默认保留四大组件中其他三大组件,Activity组件选择性保留(使用-just activity 选项),若为空不保留任何Activity
-just activity asia.bluepay.best.pay.MainActivity

#-----------附加类-----------

如果你想要某个包路径在maindex中,则使用 -keep 选项,即使他已经在分包的路径中.若为空,不保留任意类

-keep asia.bluepay.best.pay.data.**
-keep asia.bluepay.best.pay.exceptions.**
-keep asia.bluepay.best.pay.helper.**
-keep asia.bluepay.best.pay.http.**
-keep asia.bluepay.best.pay.pay.**
-keep asia.bluepay.best.pay.utils.**
-keep asia.bluepay.best.pay.utils.**
-keep com.dodola.rocoofix.**
-keep com.dodola.rocoo.**

保留单个类.

-keep asia.bluepay.best.pay.MainActivity.class
-keep asia.bluepay.best.pay.MainActivity$1.class
-keep asia.bluepay.best.pay.MainActivity$2.class
-keep asia.bluepay.best.pay.MainActivity$3.class
-keep asia.bluepay.best.pay.MainActivity$4.class
-keep asia.bluepay.best.pay.MainActivity$5.class
-keep asia.bluepay.best.pay.MainActivity$6.class
-keep asia.bluepay.best.pay.MainActivity$7.class
-keep asia.bluepay.best.pay.MainActivity$8.class
-keep asia.bluepay.best.pay.MainActivity$9.class
-keep asia.bluepay.best.pay.MainActivity$10.class
-keep asia.bluepay.best.pay.MainActivity$11.class
-keep asia.bluepay.best.pay.MainActivity$12.class
-keep asia.bluepay.best.pay.MainActivity$13.class
-keep asia.bluepay.best.pay.MainActivity$14.class
-keep asia.bluepay.best.pay.MainActivity$15.class
-keep asia.bluepay.best.pay.MainActivity$16.class
-keep asia.bluepay.best.pay.MainActivity$17.class
-keep asia.bluepay.best.pay.MainActivity$18.class
-keep asia.bluepay.best.pay.MainActivity$19.class
-keep asia.bluepay.best.pay.MainActivity$20.class
-keep asia.bluepay.best.pay.MainActivity$21.class
-keep asia.bluepay.best.pay.MainActivity$22.class
-keep asia.bluepay.best.pay.MainActivity$23.class
-keep asia.bluepay.best.pay.MainActivity$24.class
-keep asia.bluepay.best.pay.MainActivity$25.class
-keep asia.bluepay.best.pay.MainActivity$26.class
-keep asia.bluepay.best.pay.MainActivity$27.class
-keep asia.bluepay.best.pay.MainActivity$28.class
-keep asia.bluepay.best.pay.MainActivity$29.class
-keep asia.bluepay.best.pay.MainActivity$30.class
-keep asia.bluepay.best.pay.MainActivity$31.class
-keep asia.bluepay.best.pay.MainActivity$PayCallback$1.class
-keep asia.bluepay.best.pay.MainActivity$PayCallback.class

这条配置可以指定这个包下类在第二及其他dex中.

-split asia.bluepay.best.pay.core.**
#将全部类移出主Dex
-split .

不包含Android gradle 插件自动生成的miandex列表.(不用系统自带分包策略)

-donot-use-suggest

不进行dex分包, 直到 dex 的id数量超过 65536.(设置自动执行分包策略)

#-auto-maindex

显示miandex的日志.

-log-mainlist

@fishlovestoeatcat
Copy link
Author

fishlovestoeatcat commented Sep 1, 2016

哈哈,我只好这样写了,上面那个保留activity的没用,这样写就可以用了

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 配置有误, -donot-use-suggest 注释掉 #-donot-use-suggest 这条的意思是不使用-just activity 动态生成的依赖树,注释掉表示使用

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat keep的单独类可以去掉了,keep一般只在特殊情况下使用,这样可以保证main dex最小

@fishlovestoeatcat
Copy link
Author

我注释后MainActivity可以找到了,可是我里面的OnClickListener和内部类还是找不到

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 报什么错

@fishlovestoeatcat
Copy link
Author

09-01 17:00:30.898 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.ac', referenced from method asia.bluepay.best.pay.MainActivity.
09-01 17:00:30.898 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 77 (Lasia/bluepay/best/pay/ac;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.898 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0003
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.i', referenced from method asia.bluepay.best.pay.MainActivity.a
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 146 (Lasia/bluepay/best/pay/i;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0017
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.w', referenced from method asia.bluepay.best.pay.MainActivity.c
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 160 (Lasia/bluepay/best/pay/w;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.y', referenced from method asia.bluepay.best.pay.MainActivity.d
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 162 (Lasia/bluepay/best/pay/y;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.z', referenced from method asia.bluepay.best.pay.MainActivity.e
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 163 (Lasia/bluepay/best/pay/z;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.aa', referenced from method asia.bluepay.best.pay.MainActivity.f
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 75 (Lasia/bluepay/best/pay/aa;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.ab', referenced from method asia.bluepay.best.pay.MainActivity.g
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 76 (Lasia/bluepay/best/pay/ab;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.b', referenced from method asia.bluepay.best.pay.MainActivity.h
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 86 (Lasia/bluepay/best/pay/b;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.c', referenced from method asia.bluepay.best.pay.MainActivity.i
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 88 (Lasia/bluepay/best/pay/c;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.d', referenced from method asia.bluepay.best.pay.MainActivity.j
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 92 (Lasia/bluepay/best/pay/d;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.e', referenced from method asia.bluepay.best.pay.MainActivity.k
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 102 (Lasia/bluepay/best/pay/e;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.f', referenced from method asia.bluepay.best.pay.MainActivity.l
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 113 (Lasia/bluepay/best/pay/f;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.g', referenced from method asia.bluepay.best.pay.MainActivity.m
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 144 (Lasia/bluepay/best/pay/g;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.h', referenced from method asia.bluepay.best.pay.MainActivity.n
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 145 (Lasia/bluepay/best/pay/h;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.j', referenced from method asia.bluepay.best.pay.MainActivity.o
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 147 (Lasia/bluepay/best/pay/j;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.k', referenced from method asia.bluepay.best.pay.MainActivity.p
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 148 (Lasia/bluepay/best/pay/k;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.m', referenced from method asia.bluepay.best.pay.MainActivity.q
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 150 (Lasia/bluepay/best/pay/m;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.908 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.n', referenced from method asia.bluepay.best.pay.MainActivity.r
09-01 17:00:30.908 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 151 (Lasia/bluepay/best/pay/n;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.908 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.o', referenced from method asia.bluepay.best.pay.MainActivity.s
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 152 (Lasia/bluepay/best/pay/o;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.p', referenced from method asia.bluepay.best.pay.MainActivity.t
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 153 (Lasia/bluepay/best/pay/p;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.q', referenced from method asia.bluepay.best.pay.MainActivity.u
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 154 (Lasia/bluepay/best/pay/q;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.r', referenced from method asia.bluepay.best.pay.MainActivity.v
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 155 (Lasia/bluepay/best/pay/r;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.s', referenced from method asia.bluepay.best.pay.MainActivity.w
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 156 (Lasia/bluepay/best/pay/s;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.t', referenced from method asia.bluepay.best.pay.MainActivity.x
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 157 (Lasia/bluepay/best/pay/t;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.u', referenced from method asia.bluepay.best.pay.MainActivity.y
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 158 (Lasia/bluepay/best/pay/u;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.l', referenced from method asia.bluepay.best.pay.MainActivity.a
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 149 (Lasia/bluepay/best/pay/l;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0011
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.x', referenced from method asia.bluepay.best.pay.MainActivity.b
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 161 (Lasia/bluepay/best/pay/x;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0014
09-01 17:00:30.918 32227-32227/? E/dalvikvm: Could not find class 'asia.bluepay.best.pay.a', referenced from method asia.bluepay.best.pay.MainActivity.onCreate
09-01 17:00:30.918 32227-32227/? W/dalvikvm: VFY: unable to resolve new-instance 74 (Lasia/bluepay/best/pay/a;) in Lasia/bluepay/best/pay/MainActivity;
09-01 17:00:30.918 32227-32227/? D/dalvikvm: VFY: replacing opcode 0x22 at 0x0028
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x00bd at 0x05 in Lasia/bluepay/best/pay/MainActivity;.
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0235 at 0x19 in Lasia/bluepay/best/pay/MainActivity;.a
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0243 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.c
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0245 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.d
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0246 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.e
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x00bb at 0x16 in Lasia/bluepay/best/pay/MainActivity;.f
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x00bc at 0x16 in Lasia/bluepay/best/pay/MainActivity;.g
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x00f8 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.h
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x00fe at 0x16 in Lasia/bluepay/best/pay/MainActivity;.i
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0114 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.j
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x017b at 0x16 in Lasia/bluepay/best/pay/MainActivity;.k
09-01 17:00:30.918 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x01ab at 0x16 in Lasia/bluepay/best/pay/MainActivity;.l
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0233 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.m
09-01 17:00:30.928 13116-13135/? D/dalvikvm: GC_EXPLICIT freed 18K, 49% free 8519K/16480K, paused 1ms+2ms, total 18ms, dvmtargetUtilize:0.750000
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0234 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.n
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0236 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.o
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0237 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.p
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0239 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.q
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x023a at 0x16 in Lasia/bluepay/best/pay/MainActivity;.r
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x023b at 0x16 in Lasia/bluepay/best/pay/MainActivity;.s
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x023c at 0x16 in Lasia/bluepay/best/pay/MainActivity;.t
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x023d at 0x16 in Lasia/bluepay/best/pay/MainActivity;.u
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x023e at 0x16 in Lasia/bluepay/best/pay/MainActivity;.v
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x023f at 0x16 in Lasia/bluepay/best/pay/MainActivity;.w
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0240 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.x
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0241 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.y
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0238 at 0x13 in Lasia/bluepay/best/pay/MainActivity;.a
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0242 at 0x1d in Lasia/bluepay/best/pay/MainActivity;.a
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x0244 at 0x16 in Lasia/bluepay/best/pay/MainActivity;.b
09-01 17:00:30.928 32227-32227/? D/dalvikvm: DexOpt: unable to opt direct call 0x00ba at 0x2a in Lasia/bluepay/best/pay/MainActivity;.onCreate
09-01 17:00:30.928 32227-32227/? D/AndroidRuntime: Shutting down VM
09-01 17:00:30.928 32227-32227/? W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x41b6fd58)
09-01 17:00:30.928 32227-32227/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: asia.bluepay.best.pay, PID: 32227
java.lang.NoClassDefFoundError: asia.bluepay.best.pay.ac
at asia.bluepay.best.pay.MainActivity.(Unknown Source)
at java.lang.Class.newInstanceImpl(Native Method)
at java.lang.Class.newInstance(Class.java:1208)
at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2111)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2253)
at android.app.ActivityThread.access$800(ActivityThread.java:145)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1206)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:5128)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:702)
at dalvik.system.NativeStart.main(Native Method)
09-01 17:00:30.938 1107-2058/? W/ActivityManager: Force finishing activity asia.bluepay.best.pay/.MainActivity

@fishlovestoeatcat
Copy link
Author

哈哈。好长,就是找不到各种listener和内部类ac,被混淆了看不见名字

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 你用反射了么?用了的话需要把被反射的类keep

@fishlovestoeatcat
Copy link
Author

用到反射的类全部保留了包路径了

@fishlovestoeatcat
Copy link
Author

按照我最上面那种配置是可以正常使用的,就是有点别扭,加一大堆class

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 所以尽量在启动时不要做复杂逻辑,复杂逻辑可以延迟加载,程序业务上如果能优化就稍微优化下

@fishlovestoeatcat
Copy link
Author

我试了另外两个手机,你那种配置是可以的,但是那个坚果手机不行,没有把activity的内部类打进dex包里。另外请教一下,如果把项目打包成jar包,这种方式可以生效么?

@TangXiaoLv
Copy link
Owner

@fishlovestoeatcat 可以生效

@ybADMIN ybADMIN mentioned this issue Nov 22, 2016
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants