pictrr:只是Unsplash API的愚蠢且无用的实现-源码

上传者: 42114645 | 上传时间: 2021-03-25 13:07:54 | 文件大小: 179KB | 文件类型: ZIP
Picttr 另一个Unsplash客户,认真吗? 好吧,我建立了这个项目来研究MVVM架构和Jetpack库对现代android架构组件的使用。 警告:此项目包含大量的代码气味。 需要您自担风险使用它。 建于 -核心系统功能,Kotlin扩展以及对Multidex和自动化测试的支持的组件。 在旧版Android上优雅降级。 编写更简洁,惯用的Kotlin代码。 -库的集合,可帮助您设计健壮,可测试和可维护的应用程序。 从用于管理UI组件生命周期和处理数据持久性的类开始。 -创建一个可自动响应生命周期事件的UI。 构建数据对象,这些数据对象在基础数据库更改时通知视图。 -处理应用内导航所需的一切。 存储与用户界面相关的数据,这些数据在应用程序旋转时不会被破坏。 轻松安排异步任务以实现最佳执行。 第三方库和杂项库 以加载图像 :用于 通过简化的代码管理后台线程并减少了对回

文件下载

资源详情

[{"title":"( 85 个子文件 179KB ) pictrr:只是Unsplash API的愚蠢且无用的实现-源码","children":[{"title":"pictrr-master","children":[{"title":"gradlew.bat <span style='color:#111;'> 2.13KB </span>","children":null,"spread":false},{"title":"gradlew <span style='color:#111;'> 5.17KB </span>","children":null,"spread":false},{"title":"gradle.properties <span style='color:#111;'> 1.16KB </span>","children":null,"spread":false},{"title":"app","children":[{"title":"proguard-rules.pro <span style='color:#111;'> 750B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"test","children":[{"title":"java","children":[{"title":"com","children":[{"title":"ragvax","children":[{"title":"picttr","children":[{"title":"ExampleUnitTest.kt <span style='color:#111;'> 341B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"androidTest","children":[{"title":"java","children":[{"title":"com","children":[{"title":"ragvax","children":[{"title":"picttr","children":[{"title":"ExampleInstrumentedTest.kt <span style='color:#111;'> 661B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"main","children":[{"title":"res","children":[{"title":"navigation","children":[{"title":"nav_graph.xml <span style='color:#111;'> 1.56KB </span>","children":null,"spread":false}],"spread":true},{"title":"menu","children":[{"title":"menu_main.xml <span style='color:#111;'> 405B </span>","children":null,"spread":false}],"spread":true},{"title":"mipmap-xxxhdpi","children":[{"title":"ic_launcher.png <span style='color:#111;'> 10.40KB </span>","children":null,"spread":false},{"title":"ic_launcher_round.png <span style='color:#111;'> 16.18KB </span>","children":null,"spread":false}],"spread":true},{"title":"drawable","children":[{"title":"ic_baseline_arrow_back_ios_24.xml <span style='color:#111;'> 341B </span>","children":null,"spread":false},{"title":"ic_baseline_location_on_24.xml <span style='color:#111;'> 664B </span>","children":null,"spread":false},{"title":"ic_launcher_background.xml <span style='color:#111;'> 5.47KB </span>","children":null,"spread":false}],"spread":false},{"title":"mipmap-hdpi","children":[{"title":"ic_launcher.png <span style='color:#111;'> 3.51KB </span>","children":null,"spread":false},{"title":"ic_launcher_round.png <span style='color:#111;'> 5.21KB </span>","children":null,"spread":false}],"spread":false},{"title":"drawable-v24","children":[{"title":"ic_launcher_foreground.xml <span style='color:#111;'> 1.66KB </span>","children":null,"spread":false}],"spread":false},{"title":"values","children":[{"title":"colors.xml <span style='color:#111;'> 688B </span>","children":null,"spread":false},{"title":"themes.xml <span style='color:#111;'> 1.34KB </span>","children":null,"spread":false},{"title":"strings.xml <span style='color:#111;'> 553B </span>","children":null,"spread":false},{"title":"dimens.xml <span style='color:#111;'> 66B </span>","children":null,"spread":false}],"spread":false},{"title":"values-night","children":[{"title":"themes.xml <span style='color:#111;'> 878B </span>","children":null,"spread":false}],"spread":false},{"title":"mipmap-xxhdpi","children":[{"title":"ic_launcher.png <span style='color:#111;'> 7.72KB </span>","children":null,"spread":false},{"title":"ic_launcher_round.png <span style='color:#111;'> 11.59KB </span>","children":null,"spread":false}],"spread":false},{"title":"mipmap-mdpi","children":[{"title":"ic_launcher.png <span style='color:#111;'> 2.57KB </span>","children":null,"spread":false},{"title":"ic_launcher_round.png <span style='color:#111;'> 3.31KB </span>","children":null,"spread":false}],"spread":false},{"title":"mipmap-xhdpi","children":[{"title":"ic_launcher.png <span style='color:#111;'> 4.81KB </span>","children":null,"spread":false},{"title":"ic_launcher_round.png <span style='color:#111;'> 7.30KB </span>","children":null,"spread":false}],"spread":false},{"title":"mipmap-anydpi-v26","children":[{"title":"ic_launcher_round.xml <span style='color:#111;'> 272B </span>","children":null,"spread":false},{"title":"ic_launcher.xml <span style='color:#111;'> 272B </span>","children":null,"spread":false}],"spread":false},{"title":"layout","children":[{"title":"fragment_gallery.xml <span style='color:#111;'> 3.25KB </span>","children":null,"spread":false},{"title":"gallery_load_state_header_footer.xml <span style='color:#111;'> 1.68KB </span>","children":null,"spread":false},{"title":"fragment_photo_details.xml <span style='color:#111;'> 11.88KB </span>","children":null,"spread":false},{"title":"fragment_photo_zoom.xml <span style='color:#111;'> 617B </span>","children":null,"spread":false},{"title":"content_main.xml <span style='color:#111;'> 737B </span>","children":null,"spread":false},{"title":"activity_main.xml <span style='color:#111;'> 476B </span>","children":null,"spread":false},{"title":"item_gallery_tag.xml <span style='color:#111;'> 1.02KB </span>","children":null,"spread":false},{"title":"item_photo.xml <span style='color:#111;'> 1.23KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"java","children":[{"title":"com","children":[{"title":"ragvax","children":[{"title":"picttr","children":[{"title":"di","children":[{"title":"NetworkModule.kt <span style='color:#111;'> 942B </span>","children":null,"spread":false}],"spread":false},{"title":"Picttr.kt <span style='color:#111;'> 145B </span>","children":null,"spread":false},{"title":"data","children":[{"title":"collection","children":[{"title":"model","children":[{"title":"collection","children":[{"title":"Collection.kt <span style='color:#111;'> 829B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false},{"title":"photo","children":[{"title":"model","children":[{"title":"Photo.kt <span style='color:#111;'> 1.79KB </span>","children":null,"spread":false}],"spread":false},{"title":"PhotoService.kt <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false}],"spread":false},{"title":"user","children":[{"title":"model","children":[{"title":"User.kt <span style='color:#111;'> 1.28KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"common","children":[{"title":"model","children":[{"title":"Statistics.kt <span style='color:#111;'> 945B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"topic","children":[{"title":"TopicService.kt <span style='color:#111;'> 586B </span>","children":null,"spread":false},{"title":"model","children":[{"title":"Topic.kt <span style='color:#111;'> 323B </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false},{"title":"domain","children":[{"title":"photo","children":[{"title":"PhotoPagingSource.kt <span style='color:#111;'> 1.11KB </span>","children":null,"spread":false},{"title":"TopicPhotoPagingSource.kt <span style='color:#111;'> 1.14KB </span>","children":null,"spread":false},{"title":"PhotoRepository.kt <span style='color:#111;'> 1.40KB </span>","children":null,"spread":false}],"spread":false},{"title":"topic","children":[{"title":"TopicRepository.kt <span style='color:#111;'> 325B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"ui","children":[{"title":"gallery","children":[{"title":"GalleryFragment.kt <span style='color:#111;'> 5.24KB </span>","children":null,"spread":false},{"title":"GalleryGridSpacingItemDecoration.kt <span style='color:#111;'> 2.32KB </span>","children":null,"spread":false},{"title":"adapter","children":[{"title":"GalleryAdapter.kt <span style='color:#111;'> 3.10KB </span>","children":null,"spread":false},{"title":"GalleryLoadStateAdapter.kt <span style='color:#111;'> 1.67KB </span>","children":null,"spread":false},{"title":"GalleryTopicsAdapter.kt <span style='color:#111;'> 1.55KB </span>","children":null,"spread":false}],"spread":false},{"title":"GalleryViewModel.kt <span style='color:#111;'> 3.06KB </span>","children":null,"spread":false}],"spread":false},{"title":"photodetails","children":[{"title":"PhotoDetailsViewModel.kt <span style='color:#111;'> 1.81KB </span>","children":null,"spread":false},{"title":"PhotoZoomFragment.kt <span style='color:#111;'> 879B </span>","children":null,"spread":false},{"title":"PhotoDetailsFragment.kt <span style='color:#111;'> 4.54KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"GlideAppModule.kt <span style='color:#111;'> 181B </span>","children":null,"spread":false},{"title":"MainActivity.kt <span style='color:#111;'> 738B </span>","children":null,"spread":false},{"title":"utils","children":[{"title":"DpToPxConverter.kt <span style='color:#111;'> 258B </span>","children":null,"spread":false},{"title":"FlowObserver.kt <span style='color:#111;'> 882B </span>","children":null,"spread":false},{"title":"ImageViewExt.kt <span style='color:#111;'> 693B </span>","children":null,"spread":false},{"title":"NumberExt.kt <span style='color:#111;'> 305B </span>","children":null,"spread":false},{"title":"Constant.kt <span style='color:#111;'> 245B </span>","children":null,"spread":false}],"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true},{"title":"AndroidManifest.xml <span style='color:#111;'> 946B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 6B </span>","children":null,"spread":false},{"title":"build.gradle <span style='color:#111;'> 2.76KB </span>","children":null,"spread":false}],"spread":true},{"title":"gradle","children":[{"title":"wrapper","children":[{"title":"gradle-wrapper.jar <span style='color:#111;'> 53.06KB </span>","children":null,"spread":false},{"title":"gradle-wrapper.properties <span style='color:#111;'> 230B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":".idea","children":[{"title":"render.experimental.xml <span style='color:#111;'> 173B </span>","children":null,"spread":false},{"title":"codeStyles","children":[{"title":"Project.xml <span style='color:#111;'> 4.30KB </span>","children":null,"spread":false},{"title":"codeStyleConfig.xml <span style='color:#111;'> 142B </span>","children":null,"spread":false}],"spread":true},{"title":"gradle.xml <span style='color:#111;'> 859B </span>","children":null,"spread":false},{"title":"misc.xml <span style='color:#111;'> 372B </span>","children":null,"spread":false},{"title":"jarRepositories.xml <span style='color:#111;'> 1.21KB </span>","children":null,"spread":false},{"title":"vcs.xml <span style='color:#111;'> 180B </span>","children":null,"spread":false},{"title":"dictionaries","children":[{"title":"Ragvax.xml <span style='color:#111;'> 164B </span>","children":null,"spread":false}],"spread":true},{"title":"compiler.xml <span style='color:#111;'> 170B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 47B </span>","children":null,"spread":false}],"spread":true},{"title":".gitignore <span style='color:#111;'> 225B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 3.15KB </span>","children":null,"spread":false},{"title":"settings.gradle <span style='color:#111;'> 42B </span>","children":null,"spread":false},{"title":"build.gradle <span style='color:#111;'> 946B </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明