电影资讯Android App

电影资讯类 App 的开发里,基于豆瓣 API 做数据源其实挺省事,电影信息够全,接口稳定,关键是不用自己爬,节省不少功夫。这个项目里用了Retrofit来做网络求,再配合Gson解析 JSON,响应也快,代码也清晰。

UI 部分走的Material Design路线,用RecyclerViewCardView来展示电影列表,搭配动画效果,整体风格还挺现代的。像“想看”、“已看”这些功能,是通过本地SharedPreferences或者Room存储实现的,体验还不错。

Fragment 做模块分区,比如“正在热映”、“排行榜”这些,主页面用MainActivity来承载,数据共享的话可以用LiveData或者EventBus来。网络慢的时候还能靠本地缓存兜底,不至于白屏。

另外,别忘了加运行时权限,是访问网络和存储,不然在 6.0 以上跑起来容易出问题。适配方面记得用ConstraintLayout或者权重布局,屏幕大了小了都能顶得住。

如果你打算做一个电影资讯类 App,想法比较明确,那这个项目的技术栈和架构挺适合拿来借鉴。对了,配套的资源还蛮多的,比如这篇豆瓣电影爬虫,你要真想自抓数据也不难。

folder
电影资讯android app 预估大小:161个文件
file
jarlist.cache 119B
file
BuildConfig.class 347B
file
DoubanTopApplication.class 1KB
file
MainActivity.class 14KB
file
FavoritesActivity.class 5KB
file
AboutActivity.class 3KB
file
DetailActivity.class 8KB
file
MovieView.class 10KB
file
RippleView.class 6KB
file
RippleView$OnRippleCompleteListener.class 1KB
file
SearchHistoryRowView.class 1KB
file
PeopleView$DetailsUpdateHandler.class 4KB
file
RippleView$RippleType.class 1KB
file
PeopleView.class 7KB
file
DoubanApiUtils.class 2KB
file
BaiduVoiceUtils.class 1KB
file
RetrofitCallback.class 2KB
file
ApiInfosUtil$ApiInfo.class 2KB
file
ApiInfosUtil.class 1KB
file
DoubanMovieApiService.class 2KB
file
SearchStateToggleListener.class 196B
file
MovieInfoActionsListener.class 237B
file
FavoritesItemClickListener.class 248B
file
FavoritesAdapter$ViewHolder.class 2KB
file
ViewPagerAdapter.class 3KB
file
ContentItemAdapter$ViewHolder.class 2KB
file
FavoritesAdapter.class 3KB
file
ContentItemAdapter.class 3KB
file
SearchHistoryAdapter.class 3KB
file
MovieUSBox.class 1KB
file
BeansUtils.class 1KB
file
MovieTops.class 2KB
file
MovieMajorInfos.class 4KB
file
MovieMajorInfos$1.class 1KB
file
MovieInfoBean.class 5KB
file
SubjectEntity.class 5KB
file
SurveyEntity.class 4KB
file
ImagesEntity.class 969B
file
SubjectsEntity.class 1KB
file
RatingEntity.class 1KB
file
DirectorsEntity.class 1KB
file
SurveyEntity$AttrsEntity.class 3KB
file
SurveyEntity$TagsEntity.class 1KB
file
WorksEntity.class 1KB
file
CelebrityEntity.class 4KB
file
SurveyEntity$AuthorEntity.class 875B
file
AvatarsEntity.class 972B
file
SearchResultEntity.class 2KB
file
SearchResultEntity$SubjectsEntity.class 4KB
file
SurveyEntity$RatingEntity.class 1KB
file
CastsEntity.class 1KB
file
SearchHistory.class 5KB
file
Favorites.class 7KB
file
DetailContentsFragment.class 7KB
file
SwipeRefreshFragment$UpdateHandler.class 4KB
file
MovieListFragment.class 932B
file
BaseFragment.class 2KB
file
SwipeRefreshFragment.class 8KB
file
SearchPagerFragment.class 4KB
file
DetailContentsFragment$UpdateHandler.class 4KB
file
AndroidManifest.xml 2KB
file
menu_main.xml 622B
file
drawer_menu.xml 507B
file
menu_detail.xml 382B
file
detail_expland_image_mask.xml 308B
file
drawer_header_mask.xml 308B
file
ic_launcher.png 4KB
file
colors.xml 2KB
file
strings.xml 3KB
file
attrs.xml 1KB
file
styles.xml 2KB
file
dimens.xml 667B
file
strings.xml 2KB
file
ic_launcher.png 7KB
file
ic_launcher.png 3KB
file
ic_search.png 508B
file
avator.jpg 25KB
file
ic_menu.png 135B
file
ic_launcher.png 5KB
file
ic_arrow_back.png 336B
file
ic_keyboard_voice.png 540B
file
default_bg.jpg 18KB
file
ic_close.png 400B
file
ic_search_header.png 597B
file
ic_favorites.png 6KB
file
ic_unkown_image.png 4KB
file
ic_share_white.png 625B
file
ic_arrow_back_white.png 336B
file
ic_unstared.png 2KB
file
ic_loading.png 6KB
file
ic_github.png 365B
file
ic_stared.png 2KB
file
styles.xml 459B
file
activity_about.xml 14KB
file
activity_detail.xml 3KB
file
favorates_item.xml 1KB
file
movie_view_layout.xml 5KB
file
activity_favorites.xml 680B
file
content_item.xml 567B
file
activity_main.xml 2KB
file
pager_content_fragment.xml 489B
file
swipe_refresh_fragment.xml 725B
file
detail_contents_fragment.xml 8KB
file
appbar_layout.xml 776B
file
search_pager_fragment.xml 1KB
file
search_view.xml 3KB
file
people_view_layout.xml 7KB
file
search_history_row.xml 919B
file
toolbar.xml 585B
file
drawer_header.xml 2KB
file
dimens.xml 358B
file
BuildConfig.java 161B
file
org.eclipse.jdt.core.prefs 177B
file
DoubanTopApplication.java 1KB
file
MainActivity.java 21KB
file
AboutActivity.java 1KB
file
FavoritesActivity.java 3KB
file
DetailActivity.java 6KB
file
PeopleView.java 10KB
file
MovieView.java 11KB
file
RippleView.java 14KB
file
SearchHistoryRowView.java 1KB
file
DoubanApiUtils.java 3KB
file
DoubanMovieApiService.java 2KB
file
BaiduVoiceUtils.java 2KB
file
ApiInfosUtil.java 5KB
file
RetrofitCallback.java 1KB
file
MovieInfoActionsListener.java 237B
file
FavoritesItemClickListener.java 258B
file
SearchStateToggleListener.java 161B
file
FavoritesAdapter.java 3KB
file
ContentItemAdapter.java 3KB
file
ViewPagerAdapter.java 2KB
file
SearchHistoryAdapter.java 1KB
file
MovieInfoBean.java 7KB
file
MovieUSBox.java 886B
file
MovieTops.java 1KB
file
BeansUtils.java 1KB
file
WorksEntity.java 598B
file
SubjectEntity.java 4KB
file
AvatarsEntity.java 833B
file
DirectorsEntity.java 1KB
file
CelebrityEntity.java 3KB
file
SurveyEntity.java 8KB
file
ImagesEntity.java 900B
file
RatingEntity.java 908B
file
SearchResultEntity.java 4KB
file
SubjectsEntity.java 839B
file
CastsEntity.java 1KB
file
MovieMajorInfos.java 4KB
file
Favorites.java 5KB
file
SearchHistory.java 2KB
file
DetailContentsFragment.java 8KB
file
MovieListFragment.java 615B
file
SwipeRefreshFragment.java 11KB
file
SearchPagerFragment.java 3KB
file
BaseFragment.java 1KB
file
.project 848B
file
.classpath 364B
file
project.properties 562B
file
AndroidManifest.xml 2KB
...
rar 文件大小:209.56KB