GithubHelp home page GithubHelp logo

Comments (19)

EspoirX avatar EspoirX commented on June 28, 2024

里面有用到反射和注解,你可以查查这两个在混淆后是不是会有影响

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

我看了,是有影响的,就是不知道该怎么写混淆规则.....很尴尬,项目快上线,楼主能提供下混淆规则嘛

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

我也没试过,keep住那些mvp基础类试试。。我晚点查查资料。

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

不行哦,keep住了Presenter是空的

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

暂时不用@PresenterVariable注解,用getPresenterProviders().getPresenter(0);没出问题了

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

因为这个注解里面用到了反射,我还没时间去查资料,你有空查查混淆和这方面相关的吧

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

如果你只有一个Presenter的话,其实你这样就好了:

@CreatePresenter(presenter = LoginPresenter.class)
public class ExampleActivity3 extends BaseMvpActivity<LoginPresenter> implements LoginView {

    @Override
    protected int getContentView() {
        return R.layout.activity_main;
    }

    @Override
    public void init() {
        getPresenter().login();
    }

    @Override
    public void loginSuccess() {
        Log.i("ExampleActivity1", "登陆成功");
    }
}

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

嗯,好,主要是我在混淆这方面对于反射和注解,也了解的不多,如果后期知道了,还是加上吧

from easymvp.

zilianliuxue avatar zilianliuxue commented on June 28, 2024

加上这2个注解类的混一下就好了
-keep @packagename.PresenterVariable class * {;}
-keep @packagename.CreatePresenter class * {
;}
-keep class * {
@packagename.PresenterVariable ;
@cpackagename.CreatePresenter ;
}
-keepclassmembers class ** {
@packagename.PresenterVariable ;
@cpackagename.CreatePresenter ;
}

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

老铁666,等下我写到 readme 里,thanks

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

@lizixian18 最好写一个范例,我刚刚按照写得时候,编译失败了

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

不会失败啊,额……大括号里面分号前要加个星号

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

是这样的么?

-keep com.abc.abc.utils.mvp.PresenterVariable class * {*;}
-keep com.abc.abc.utils.mvp.CreatePresenter class * {*;}
-keep class * {
 com.abc.abc.utils.mvp.PresenterVariable;
 com.abc.abc.utils.mvp.CreatePresenter;
 }
-keepclassmembers class ** {
 com.abc.abc.utils.mvp.PresenterVariable;
 com.abc.abc.utils.mvp.CreatePresenter;
 }
能帮我喵喵不~

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

运行下不蹦就是可以了

from easymvp.

dicallc avatar dicallc commented on June 28, 2024

@zilianliuxue 按照你写的一直编译失败,能帮我看看不,或者留个联系方式请教一下

from easymvp.

yswheye avatar yswheye commented on June 28, 2024

@dicallc 这样写
image

from easymvp.

yswheye avatar yswheye commented on June 28, 2024

@lizixian18 需要这样写才行,readme要更新下了。
image

from easymvp.

EspoirX avatar EspoirX commented on June 28, 2024

好,谢谢

from easymvp.

solochen avatar solochen commented on June 28, 2024

如果还有不能编译的朋友可以这样配:

-keep class xx.xx.xx.PresenterVariable {;}
-keep @xx.xx.xx.PresenterVariable class *
-keep class xx.xx.xx.CreatePresenter {
;}
-keep @xx.xx.xx.CreatePresenter class *
-keep class * {
xx.xx.xx.PresenterVariable ;
xx.xx.xx.CreatePresenter ;
}
-keepclassmembers class ** {
xx.xx.xx.PresenterVariable ;
xx.xx.xx.CreatePresenter ;
}

from easymvp.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.