liu-xiao-dong / jd-test Goto Github PK
View Code? Open in Web Editor NEW仿京东app 全新组件化架构升级
License: Apache License 2.0
仿京东app 全新组件化架构升级
License: Apache License 2.0
apk链接挂了,可以重新贴一个么 或者发一个 谢谢![email protected]
我用新版本的androidstudio 3.3.1版本,好像gradle版本和butterknife版本有问题了
里面就一个刷新已经看迷了,希望出配套的讲解文档,在文末也可以给个支付宝微信二维码啥的,支持一波ヾ(◍°∇°◍)ノ゙
对于DataManager这个东西放在Common库里面,太儿戏了,所有模块的model层都将下层到Common库中,这样子怕是很难后面独立开发,以及模块越多Common会爆炸的,我现在遇到的问题也是用Dagger2实现依赖注入,也有类似DataManager这类,也必须声明成@singleton,然而ApplicationComponent也放在Common库中,但是我想在各个模块定义自己的DataManager实现真正的model水平化解耦,但是这样子就不能声明成@singleton了,这如何是好
如题
模块A和模块B都依赖CommonLibrary,会让包体积变大吗
现在的组件化只是搭建了架构而已吗? 会有下一步跟进吗?
还是说首页完成这个项目也就差不多了?组件化只是test而已?
系统状态栏的适配也搞一下就完美了
NO issues is good!!!
public abstract class BaseActivity extends AppCompatActivity {
private Unbinder bindler;
protected abstract int getLayoutID();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(this.getLayoutID());/////利用抽象方法获得layoutid,就可以在父类中初始化了,
bindler=ButterKnife.bind(this);////绑定前要确认布局已经被添加,否则会报错
LogUtils.i("------------" + this.getClass().getSimpleName() + "--------------");
}
@Override
public boolean onTouchEvent(MotionEvent event) {
InputUtil.hideKeyBoard(this);
return super.onTouchEvent(event);
}
@Override
protected void onDestroy() {
if(bindler!=null)
bindler.unbind();
super.onDestroy();
}
}
可以按照当前京东App版本实现Statusbar颜色与banner图片背景一致吗
JD-Test/common/src/main/java/com/sxjs/common/base/baseadapter,这个其实可以用gradle直接用的,不用做为library,而且还在不停的更新中
大哥,我能问一下你这个数据是用什么抓的吗?
Android dependency 'com.android.support:support-core-utils' has different version for the compile (25.2.0) and runtime (26.1.0) classpath. You should manually set the same version via DependencyResolution
Caused by: java.lang.IllegalArgumentException: view must not be null
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:281)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:93)
at com.sxjs.common.widget.NoNetWorkNotice.show(NoNetWorkNotice.java:58)
at com.sxjs.common.receiver.NetWorkChangeBroadcastReceiver.onReceive(NetWorkChangeBroadcastReceiver.java:46)
at android.app.LoadedApk$ReceiverDispatcher$Args.lambda$-android_app_LoadedApk$ReceiverDispatcher$Args_52497(LoadedApk.java:1313)
at android.app.-$Lambda$aS31cHIhRx41653CMnd4gZqshIQ.$m$7(Unknown Source:4)
at android.app.-$Lambda$aS31cHIhRx41653CMnd4gZqshIQ.run(Unknown Source:39)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6494)
使用整个baseadapter包下得类,混淆后不能用了,是混淆BaseRecyclerViewAdapterHelper出的问题吗?求解
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.