实例介绍
这是仿网易云音乐的app源码,很简便使用
【实例截图】
【核心代码】
01971139-514a-4fce-9ea8-e275237a6de5
└── PonyMusic-master
├── app
│ ├── build.gradle
│ ├── debug.keystore
│ ├── libs
│ │ └── AMap_Location_1.3.3.jar
│ ├── proguard-rules.pro
│ ├── src
│ │ └── main
│ │ ├── AndroidManifest.xml
│ │ ├── java
│ │ │ └── me
│ │ │ └── wcy
│ │ │ └── music
│ │ │ ├── activity
│ │ │ │ ├── AboutActivity.java
│ │ │ │ ├── ArtistInfoActivity.java
│ │ │ │ ├── BaseActivity.java
│ │ │ │ ├── MusicActivity.java
│ │ │ │ ├── PlaylistActivity.java
│ │ │ │ ├── SearchMusicActivity.java
│ │ │ │ ├── SettingActivity.java
│ │ │ │ └── SplashActivity.java
│ │ │ ├── adapter
│ │ │ │ ├── FragmentAdapter.java
│ │ │ │ ├── LocalMusicAdapter.java
│ │ │ │ ├── OnlineMusicAdapter.java
│ │ │ │ ├── OnMoreClickListener.java
│ │ │ │ ├── PlaylistAdapter.java
│ │ │ │ ├── PlayPagerAdapter.java
│ │ │ │ └── SearchMusicAdapter.java
│ │ │ ├── api
│ │ │ │ └── KeyStore.java
│ │ │ ├── application
│ │ │ │ ├── AppCache.java
│ │ │ │ ├── CrashHandler.java
│ │ │ │ ├── MusicApplication.java
│ │ │ │ └── Notifier.java
│ │ │ ├── constants
│ │ │ │ ├── Actions.java
│ │ │ │ └── Extras.java
│ │ │ ├── enums
│ │ │ │ ├── LoadStateEnum.java
│ │ │ │ └── PlayModeEnum.java
│ │ │ ├── executor
│ │ │ │ ├── DownloadMusic.java
│ │ │ │ ├── DownloadOnlineMusic.java
│ │ │ │ ├── DownloadSearchedMusic.java
│ │ │ │ ├── IExecutor.java
│ │ │ │ ├── NaviMenuExecutor.java
│ │ │ │ ├── PlayMusic.java
│ │ │ │ ├── PlayOnlineMusic.java
│ │ │ │ ├── PlaySearchedMusic.java
│ │ │ │ ├── SearchLrc.java
│ │ │ │ ├── ShareOnlineMusic.java
│ │ │ │ └── WeatherExecutor.java
│ │ │ ├── fragment
│ │ │ │ ├── BaseFragment.java
│ │ │ │ ├── LocalMusicFragment.java
│ │ │ │ ├── PlayFragment.java
│ │ │ │ └── PlaylistFragment.java
│ │ │ ├── http
│ │ │ │ ├── HttpCallback.java
│ │ │ │ ├── HttpClient.java
│ │ │ │ ├── HttpInterceptor.java
│ │ │ │ └── JsonCallback.java
│ │ │ ├── model
│ │ │ │ ├── ArtistInfo.java
│ │ │ │ ├── DownloadInfo.java
│ │ │ │ ├── Lrc.java
│ │ │ │ ├── Music.java
│ │ │ │ ├── OnlineMusic.java
│ │ │ │ ├── OnlineMusicList.java
│ │ │ │ ├── SearchMusic.java
│ │ │ │ ├── SongListInfo.java
│ │ │ │ └── Splash.java
│ │ │ ├── receiver
│ │ │ │ ├── DownloadReceiver.java
│ │ │ │ ├── NoisyAudioStreamReceiver.java
│ │ │ │ ├── RemoteControlReceiver.java
│ │ │ │ └── StatusBarReceiver.java
│ │ │ ├── service
│ │ │ │ ├── EventCallback.java
│ │ │ │ ├── OnPlayerEventListener.java
│ │ │ │ └── PlayService.java
│ │ │ ├── utils
│ │ │ │ ├── binding
│ │ │ │ │ ├── Bind.java
│ │ │ │ │ └── ViewBinder.java
│ │ │ │ ├── CoverLoader.java
│ │ │ │ ├── FileUtils.java
│ │ │ │ ├── ImageUtils.java
│ │ │ │ ├── MusicUtils.java
│ │ │ │ ├── NetworkUtils.java
│ │ │ │ ├── ParseUtils.java
│ │ │ │ ├── permission
│ │ │ │ │ ├── PermissionReq.java
│ │ │ │ │ └── PermissionResult.java
│ │ │ │ ├── Preferences.java
│ │ │ │ ├── proguard
│ │ │ │ │ └── NoProGuard.java
│ │ │ │ ├── ScreenUtils.java
│ │ │ │ ├── SystemUtils.java
│ │ │ │ ├── ToastUtils.java
│ │ │ │ └── ViewUtils.java
│ │ │ └── widget
│ │ │ ├── AlbumCoverView.java
│ │ │ ├── AutoLoadListView.java
│ │ │ └── IndicatorLayout.java
│ │ └── res
│ │ ├── anim
│ │ │ ├── fragment_slide_down.xml
│ │ │ └── fragment_slide_up.xml
│ │ ├── drawable
│ │ │ ├── btn_action_bg_selector.xml
│ │ │ ├── ic_status_bar_next_dark_selector.xml
│ │ │ ├── ic_status_bar_next_light_selector.xml
│ │ │ ├── ic_status_bar_pause_dark_selector.xml
│ │ │ ├── ic_status_bar_pause_light_selector.xml
│ │ │ ├── ic_status_bar_play_dark_selector.xml
│ │ │ ├── ic_status_bar_play_light_selector.xml
│ │ │ ├── music_list_more_bg_selector.xml
│ │ │ ├── music_tab_bar_text_color_selector.xml
│ │ │ ├── play_bar_bg_selector.xml
│ │ │ ├── play_bar_btn_play_pause_selector.xml
│ │ │ ├── play_btn_loop_selector.xml
│ │ │ ├── play_btn_next_selector.xml
│ │ │ ├── play_btn_one_selector.xml
│ │ │ ├── play_btn_pause_selector.xml
│ │ │ ├── play_btn_play_pause_selector.xml
│ │ │ ├── play_btn_play_selector.xml
│ │ │ ├── play_btn_prev_selector.xml
│ │ │ ├── play_btn_shuffle_selector.xml
│ │ │ ├── play_mode_level_list.xml
│ │ │ ├── play_page_cover_border_shape.xml
│ │ │ ├── play_page_cover_top_line_shape.xml
│ │ │ ├── progress_bar_drawable.xml
│ │ │ ├── progress_bar_style.xml
│ │ │ ├── seek_bar_progress_style.xml
│ │ │ └── seek_bar_volume_style.xml
│ │ ├── drawable-night
│ │ │ └── play_bar_bg_selector.xml
│ │ ├── drawable-v21
│ │ │ ├── btn_action_bg_selector.xml
│ │ │ ├── music_list_more_bg_selector.xml
│ │ │ └── play_bar_bg_selector.xml
│ │ ├── drawable-xhdpi
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_play_page_indicator_selected.png
│ │ │ └── ic_play_page_indicator_unselected.png
│ │ ├── drawable-xxhdpi
│ │ │ ├── default_artist.png
│ │ │ ├── default_cover.png
│ │ │ ├── ic_arrow_down.png
│ │ │ ├── ic_launcher.png
│ │ │ ├── ic_loading1.png
│ │ │ ├── ic_loading2.png
│ │ │ ├── ic_loading3.png
│ │ │ ├── ic_loading4.png
│ │ │ ├── ic_menu_about.png
│ │ │ ├── ic_menu_exit.png
│ │ │ ├── ic_menu_night.png
│ │ │ ├── ic_menu.png
│ │ │ ├── ic_menu_search.png
│ │ │ ├── ic_menu_settings.png
│ │ │ ├── ic_menu_timer.png
│ │ │ ├── ic_music_list_icon_more.png
│ │ │ ├── ic_notification.png
│ │ │ ├── ic_online_music_list_profile_headline.png
│ │ │ ├── ic_play_bar_btn_next.png
│ │ │ ├── ic_play_bar_btn_pause.png
│ │ │ ├── ic_play_bar_btn_play.png
│ │ │ ├── ic_play_btn_loop.png
│ │ │ ├── ic_play_btn_loop_pressed.png
│ │ │ ├── ic_play_btn_next.png
│ │ │ ├── ic_play_btn_next_pressed.png
│ │ │ ├── ic_play_btn_one.png
│ │ │ ├── ic_play_btn_one_pressed.png
│ │ │ ├── ic_play_btn_pause.png
│ │ │ ├── ic_play_btn_pause_pressed.png
│ │ │ ├── ic_play_btn_play.png
│ │ │ ├── ic_play_btn_play_pressed.png
│ │ │ ├── ic_play_btn_prev.png
│ │ │ ├── ic_play_btn_prev_pressed.png
│ │ │ ├── ic_play_btn_shuffle.png
│ │ │ ├── ic_play_btn_shuffle_pressed.png
│ │ │ ├── ic_seek_bar_progress_btn.png
│ │ │ ├── ic_seek_bar_volume_btn.png
│ │ │ ├── ic_status_bar_next_dark.png
│ │ │ ├── ic_status_bar_next_dark_pressed.png
│ │ │ ├── ic_status_bar_next_light.png
│ │ │ ├── ic_status_bar_next_light_pressed.png
│ │ │ ├── ic_status_bar_pause_dark.png
│ │ │ ├── ic_status_bar_pause_dark_pressed.png
│ │ │ ├── ic_status_bar_pause_light.png
│ │ │ ├── ic_status_bar_pause_light_pressed.png
│ │ │ ├── ic_status_bar_play_dark.png
│ │ │ ├── ic_status_bar_play_dark_pressed.png
│ │ │ ├── ic_status_bar_play_light.png
│ │ │ ├── ic_status_bar_play_light_pressed.png
│ │ │ ├── ic_volume.png
│ │ │ ├── ic_weather_cloudy_night.png
│ │ │ ├── ic_weather_cloudy.png
│ │ │ ├── ic_weather_foggy.png
│ │ │ ├── ic_weather_overcast.png
│ │ │ ├── ic_weather_rain.png
│ │ │ ├── ic_weather_sandstorm.png
│ │ │ ├── ic_weather_sleet.png
│ │ │ ├── ic_weather_snow.png
│ │ │ ├── ic_weather_sunny_night.png
│ │ │ ├── ic_weather_sunny.png
│ │ │ ├── ic_weather_thunderstorm.png
│ │ │ ├── ic_weather_typhoon.png
│ │ │ ├── play_page_default_bg.jpg
│ │ │ ├── play_page_default_cover.png
│ │ │ ├── play_page_disc.png
│ │ │ └── play_page_needle.png
│ │ ├── drawable-xxxhdpi
│ │ │ └── ic_launcher.png
│ │ ├── layout
│ │ │ ├── activity_about.xml
│ │ │ ├── activity_artist_info.xml
│ │ │ ├── activity_music_include.xml
│ │ │ ├── activity_music.xml
│ │ │ ├── activity_online_music_list_header.xml
│ │ │ ├── activity_playlist.xml
│ │ │ ├── activity_search_music.xml
│ │ │ ├── activity_setting.xml
│ │ │ ├── activity_splash.xml
│ │ │ ├── auto_load_list_view_footer.xml
│ │ │ ├── fragment_local_music.xml
│ │ │ ├── fragment_playlist.xml
│ │ │ ├── fragment_play_page_cover.xml
│ │ │ ├── fragment_play_page_lrc.xml
│ │ │ ├── fragment_play.xml
│ │ │ ├── include_app_bar.xml
│ │ │ ├── include_load_fail.xml
│ │ │ ├── include_loading.xml
│ │ │ ├── include_music_tab_bar.xml
│ │ │ ├── include_play_bar.xml
│ │ │ ├── include_play_page_controller.xml
│ │ │ ├── include_play_page_volume_bar.xml
│ │ │ ├── include_progress_bar.xml
│ │ │ ├── item_artist_info.xml
│ │ │ ├── navigation_header.xml
│ │ │ ├── notification.xml
│ │ │ ├── view_holder_music.xml
│ │ │ ├── view_holder_playlist_profile.xml
│ │ │ └── view_holder_playlist.xml
│ │ ├── menu
│ │ │ ├── menu_search_music.xml
│ │ │ └── navigation_menu.xml
│ │ ├── values
│ │ │ ├── arrays.xml
│ │ │ ├── colors.xml
│ │ │ ├── dimens.xml
│ │ │ ├── strings_preference.xml
│ │ │ ├── strings.xml
│ │ │ └── styles.xml
│ │ ├── values-night
│ │ │ ├── colors.xml
│ │ │ └── styles.xml
│ │ ├── values-w820dp
│ │ │ └── dimens.xml
│ │ └── xml
│ │ ├── preference_about.xml
│ │ ├── preference_setting.xml
│ │ └── provider_paths.xml
│ └── wangchenyan.keystore
├── art
│ ├── screenshot_01.jpg
│ ├── screenshot_02.jpg
│ ├── screenshot_03.jpg
│ ├── screenshot_04.jpg
│ ├── screenshot_05.jpg
│ └── screenshot_06.jpg
├── build.gradle
├── gradle
│ └── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── gradle.properties
├── gradlew
├── gradlew.bat
├── README.md
└── settings.gradle
43 directories, 243 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论