├── .gitignore ├── Design ├── 桌面端 │ ├── 桌面版1.jpg │ ├── 桌面版2.mp4 │ ├── 桌面版3.gif │ ├── 桌面版4.png │ ├── 桌面版5.mp4 │ └── 桌面版6.mp4 ├── 移动端 │ ├── 移动端1.gif │ ├── 移动端2.mp4 │ └── 移动端3.mp4 └── 设计图.sketch ├── GIF ├── 夜间模式.gif ├── 播放页.gif ├── 歌单列表.gif └── 首页欢迎.gif ├── LICENSE ├── README.md ├── imiss-django-master └── imiss │ ├── .idea │ ├── encodings.xml │ ├── imiss.iml │ ├── misc.xml │ ├── modules.xml │ └── workspace.xml │ ├── imiss │ ├── __init__.py │ ├── category │ │ ├── model_tool.py │ │ └── sql_tool.py │ ├── middleware.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py │ ├── manage.py │ ├── media │ └── music │ │ ├── 000c65fd21.png │ │ ├── 2c48f8b60d.png │ │ ├── 3b8f81ec6e.lrc │ │ ├── 43d219d422.png │ │ ├── 4d1dae6e45.mp3 │ │ ├── 537c42032e.png │ │ ├── 5749e53da3.png │ │ ├── 5bf9d0c4d4.lrc │ │ ├── 61341bd1eb.mp3 │ │ ├── b41fc14732.png │ │ ├── b73118ad2b.png │ │ ├── c74f5d4933.mp3 │ │ ├── d210008636.png │ │ ├── e1660aab31.png │ │ ├── e1ce2291fc.lrc │ │ ├── e6c234690d.lrc │ │ ├── ee39416ea9.png │ │ └── eed2099321.mp3 │ └── music │ ├── __init__.py │ ├── admin.py │ ├── apps.py │ ├── migrations │ ├── 0001_initial.py │ ├── 0002_auto_20180930_2100.py │ ├── 0003_auto_20180930_2303.py │ └── __init__.py │ ├── models.py │ ├── tests.py │ ├── urls.py │ └── views.py ├── imiss-ios-master ├── Podfile ├── Podfile.lock ├── music.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ └── contents.xcworkspacedata ├── music.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ └── IDEWorkspaceChecks.plist └── music │ ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ └── Contents.json │ ├── Contents.json │ ├── LaunchImage.launchimage │ │ └── Contents.json │ ├── Tabbar │ │ ├── Contents.json │ │ ├── cm4_btm_icn_account-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_account-ipx@3x.png │ │ ├── cm4_btm_icn_account.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_account.png │ │ │ ├── cm4_btm_icn_account@2x.png │ │ │ └── cm4_btm_icn_account@3x.png │ │ ├── cm4_btm_icn_account_prs-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_account_prs-ipx@3x.png │ │ ├── cm4_btm_icn_account_prs.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_account_prs@2x.png │ │ │ └── cm4_btm_icn_account_prs@3x.png │ │ ├── cm4_btm_icn_discovery-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_discovery-ipx@3x.png │ │ ├── cm4_btm_icn_discovery.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_discovery.png │ │ │ ├── cm4_btm_icn_discovery@2x.png │ │ │ └── cm4_btm_icn_discovery@3x.png │ │ ├── cm4_btm_icn_discovery_prs-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_discovery_prs-ipx@3x.png │ │ ├── cm4_btm_icn_discovery_prs.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_discovery_prs.png │ │ │ ├── cm4_btm_icn_discovery_prs@2x.png │ │ │ └── cm4_btm_icn_discovery_prs@3x.png │ │ ├── cm4_btm_icn_music-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_music-ipx@3x.png │ │ ├── cm4_btm_icn_music.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_music.png │ │ │ ├── cm4_btm_icn_music@2x.png │ │ │ └── cm4_btm_icn_music@3x.png │ │ ├── cm4_btm_icn_music_new-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_music_new-ipx@3x.png │ │ ├── cm4_btm_icn_music_new.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_music_new.png │ │ │ ├── cm4_btm_icn_music_new@2x.png │ │ │ └── cm4_btm_icn_music_new@3x.png │ │ ├── cm4_btm_icn_music_new_prs-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_music_new_prs-ipx@3x.png │ │ ├── cm4_btm_icn_music_new_prs.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_music_new_prs@2x.png │ │ │ └── cm4_btm_icn_music_new_prs@3x.png │ │ ├── cm4_btm_icn_music_prs-ipx.imageset │ │ │ ├── Contents.json │ │ │ └── cm4_btm_icn_music_prs-ipx@3x.png │ │ └── cm4_btm_icn_music_prs.imageset │ │ │ ├── Contents.json │ │ │ ├── cm4_btm_icn_music_prs@2x.png │ │ │ └── cm4_btm_icn_music_prs@3x.png │ ├── cm2_lrc_time_btn_play.imageset │ │ ├── Contents.json │ │ ├── cm2_lrc_time_btn_play.png │ │ ├── cm2_lrc_time_btn_play@2x.png │ │ └── cm2_lrc_time_btn_play@3x.png │ └── cm2_play_disc.imageset │ │ ├── Contents.json │ │ ├── cm2_play_disc.png │ │ ├── cm2_play_disc@2x.png │ │ └── cm2_play_disc@3x.png │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Classes │ ├── AppDelegate │ │ ├── AppDelegate+ScreenShot.h │ │ ├── AppDelegate+ScreenShot.m │ │ ├── AppDelegate+UMengShare.h │ │ ├── AppDelegate+UMengShare.m │ │ ├── AppDelegate.h │ │ └── AppDelegate.m │ ├── Base │ │ ├── controller │ │ │ ├── BaseItem.h │ │ │ ├── BaseItem.m │ │ │ ├── BaseNavigationController.h │ │ │ ├── BaseNavigationController.m │ │ │ ├── BaseTabBarController.h │ │ │ ├── BaseTabBarController.m │ │ │ ├── BaseViewController.h │ │ │ └── BaseViewController.m │ │ ├── model │ │ │ ├── BaseModel.h │ │ │ └── BaseModel.m │ │ └── view │ │ │ ├── BaseCollectionCell.h │ │ │ ├── BaseCollectionCell.m │ │ │ ├── BaseCollectionReusableView.h │ │ │ ├── BaseCollectionReusableView.m │ │ │ ├── BaseCollectionView.h │ │ │ ├── BaseCollectionView.m │ │ │ ├── BaseService.h │ │ │ ├── BaseService.m │ │ │ ├── BaseTabBar.h │ │ │ ├── BaseTabBar.m │ │ │ ├── BaseTableCell.h │ │ │ ├── BaseTableCell.m │ │ │ ├── BaseView.h │ │ │ └── BaseView.m │ ├── Categorys │ │ ├── CALayer │ │ │ ├── CALayer+Extension.h │ │ │ └── CALayer+Extension.m │ │ ├── MJRefresh │ │ │ ├── MJRefreshBackNormalFooter+Extension.h │ │ │ ├── MJRefreshBackNormalFooter+Extension.m │ │ │ ├── MJRefreshNormalHeader+Extension.h │ │ │ └── MJRefreshNormalHeader+Extension.m │ │ ├── NSString │ │ │ ├── NSAttributedString+Extension.h │ │ │ ├── NSAttributedString+Extension.m │ │ │ ├── NSString+Encryption.h │ │ │ ├── NSString+Encryption.m │ │ │ ├── NSString+Extension.h │ │ │ └── NSString+Extension.m │ │ ├── Theme │ │ │ ├── ThemeConfig.plist │ │ │ ├── ThemeConst.h │ │ │ ├── ThemeConst.m │ │ │ ├── UIView+UIConfig.h │ │ │ └── UIView+UIConfig.m │ │ ├── UIButton │ │ │ ├── UIButton+BarButtonItem.h │ │ │ └── UIButton+BarButtonItem.m │ │ ├── UICollectionView │ │ │ ├── UICollectionReusableView+Extension.h │ │ │ └── UICollectionReusableView+Extension.m │ │ ├── UIColor │ │ │ ├── UIColor+HEX.h │ │ │ └── UIColor+HEX.m │ │ ├── UIFont │ │ │ ├── UIFont+Extension.h │ │ │ └── UIFont+Extension.m │ │ ├── UIImage │ │ │ ├── UIImage+Extension.h │ │ │ └── UIImage+Extension.m │ │ ├── UITableView │ │ │ ├── UITableView+Extension.h │ │ │ └── UITableView+Extension.m │ │ └── UIView │ │ │ ├── UIView+BlockGesture.h │ │ │ ├── UIView+BlockGesture.m │ │ │ ├── UIView+BorderLine.h │ │ │ ├── UIView+BorderLine.m │ │ │ ├── UIView+Extension.h │ │ │ ├── UIView+Extension.m │ │ │ ├── UIView+Visuals.h │ │ │ └── UIView+Visuals.m │ ├── Common.h │ ├── KKPrefixHeader.pch │ ├── Modules │ │ ├── Home │ │ │ ├── Detail │ │ │ │ ├── Controller │ │ │ │ │ ├── DetailController.h │ │ │ │ │ └── DetailController.m │ │ │ │ └── View │ │ │ │ │ ├── DetailCard.h │ │ │ │ │ ├── DetailCard.m │ │ │ │ │ └── DetailCard.xib │ │ │ └── Home │ │ │ │ ├── Controller │ │ │ │ ├── HomeController.h │ │ │ │ └── HomeController.m │ │ │ │ ├── Model │ │ │ │ ├── HomeRecommendModel.h │ │ │ │ ├── HomeRecommendModel.m │ │ │ │ ├── PupularModel.h │ │ │ │ ├── PupularModel.m │ │ │ │ ├── SongModel.h │ │ │ │ └── SongModel.m │ │ │ │ ├── Transition │ │ │ │ ├── HomeDetailTransition.h │ │ │ │ ├── HomeDetailTransition.m │ │ │ │ ├── HomeMusicTransition.h │ │ │ │ └── HomeMusicTransition.m │ │ │ │ └── View │ │ │ │ ├── control │ │ │ │ ├── HomeConfig.h │ │ │ │ ├── HomeConfig.m │ │ │ │ ├── HomeContent.h │ │ │ │ ├── HomeContent.m │ │ │ │ ├── HomeTitle.h │ │ │ │ └── HomeTitle.m │ │ │ │ └── popular │ │ │ │ ├── HomeCollection.h │ │ │ │ ├── HomeCollection.m │ │ │ │ ├── HomeCollectionCell.h │ │ │ │ ├── HomeCollectionCell.m │ │ │ │ ├── HomeCollectionCell.xib │ │ │ │ ├── HomeCollectionLayout.h │ │ │ │ └── HomeCollectionLayout.m │ │ ├── Mine │ │ │ ├── About │ │ │ │ └── Controller │ │ │ │ │ ├── AboutController.h │ │ │ │ │ └── AboutController.m │ │ │ └── Mine │ │ │ │ ├── Controller │ │ │ │ ├── MineController.h │ │ │ │ └── MineController.m │ │ │ │ └── View │ │ │ │ ├── MineCell.h │ │ │ │ ├── MineCell.m │ │ │ │ └── MineCell.xib │ │ ├── Music │ │ │ └── Music │ │ │ │ ├── Controller │ │ │ │ ├── MusicController.h │ │ │ │ └── MusicController.m │ │ │ │ ├── Model │ │ │ │ ├── ResourceModel.h │ │ │ │ └── ResourceModel.m │ │ │ │ ├── Tool │ │ │ │ ├── MusicModules.h │ │ │ │ ├── MusicModules.m │ │ │ │ ├── MusicModulesConst.h │ │ │ │ └── MusicModulesConst.m │ │ │ │ └── View │ │ │ │ ├── bottom │ │ │ │ ├── MusicBottom.h │ │ │ │ ├── MusicBottom.m │ │ │ │ └── MusicBottom.xib │ │ │ │ ├── cd │ │ │ │ ├── MusicCD.h │ │ │ │ └── MusicCD.m │ │ │ │ ├── lyric │ │ │ │ ├── MusicFlag.h │ │ │ │ ├── MusicFlag.m │ │ │ │ ├── MusicFlag.xib │ │ │ │ ├── MusicLyric.h │ │ │ │ ├── MusicLyric.m │ │ │ │ ├── MusicLyricCell.h │ │ │ │ ├── MusicLyricCell.m │ │ │ │ ├── MusicVoice.h │ │ │ │ ├── MusicVoice.m │ │ │ │ └── MusicVoice.xib │ │ │ │ └── navigation │ │ │ │ ├── MusicNavigation.h │ │ │ │ ├── MusicNavigation.m │ │ │ │ └── MusicNavigation.xib │ │ └── Sheet │ │ │ ├── Controller │ │ │ ├── SheetController.h │ │ │ └── SheetController.m │ │ │ ├── Model │ │ │ ├── SheetModel.h │ │ │ └── SheetModel.m │ │ │ ├── Transition │ │ │ ├── SheetMusicTransition.h │ │ │ └── SheetMusicTransition.m │ │ │ └── View │ │ │ ├── Collection │ │ │ ├── SheetCollection.h │ │ │ ├── SheetCollection.m │ │ │ ├── SheetCollectionCell.h │ │ │ ├── SheetCollectionCell.m │ │ │ ├── SheetCollectionCell.xib │ │ │ ├── SheetCollectionLayout.h │ │ │ └── SheetCollectionLayout.m │ │ │ └── Table │ │ │ ├── SheetTable.h │ │ │ ├── SheetTable.m │ │ │ ├── SheetTableCell.h │ │ │ ├── SheetTableCell.m │ │ │ └── SheetTableCell.xib │ ├── NetWork │ │ ├── AFNManager.h │ │ ├── AFNManager.m │ │ ├── APPResult.h │ │ ├── APPResult.m │ │ ├── AppProgressView.h │ │ ├── AppProgressView.m │ │ ├── NSString+API.h │ │ └── NSString+API.m │ ├── Resources │ │ ├── cm2_act_icn_arr.png │ │ ├── home_close.png │ │ ├── home_icn1.jpeg │ │ ├── home_like_normal.png │ │ ├── home_like_select.png │ │ ├── home_pause.png │ │ ├── home_play.png │ │ ├── home_share.png │ │ ├── like_icn_small.png │ │ ├── list_icn_small.png │ │ ├── mine_share_link.png │ │ ├── mine_share_qq.png │ │ ├── mine_share_wb.png │ │ ├── mine_share_wc.png │ │ ├── mine_share_wzone.png │ │ ├── mine_share_zone.png │ │ ├── music_back.png │ │ ├── music_cycle.png │ │ ├── music_down.png │ │ ├── music_forward.png │ │ ├── music_icn_small.png │ │ ├── music_list.png │ │ ├── music_menu.png │ │ ├── music_random.png │ │ └── share_close.png │ ├── ThirdParty │ │ ├── KMTagListView │ │ │ ├── KMTag.h │ │ │ ├── KMTag.m │ │ │ ├── KMTagListView.h │ │ │ └── KMTagListView.m │ │ ├── LEECoolButton │ │ │ ├── LEECoolButton.h │ │ │ └── LEECoolButton.m │ │ ├── MBProgressHUD │ │ │ ├── UIView+MBProgressHUD.h │ │ │ ├── UIView+MBProgressHUD.m │ │ │ ├── UIViewController+MBProgressHUD.h │ │ │ ├── UIViewController+MBProgressHUD.m │ │ │ ├── UIWindow+MBProgressHUD.h │ │ │ └── UIWindow+MBProgressHUD.m │ │ ├── Realm │ │ │ ├── RLMRealm+Extension.h │ │ │ ├── RLMRealm+Extension.m │ │ │ └── model │ │ │ │ ├── HomeRealmModel.h │ │ │ │ ├── HomeRealmModel.m │ │ │ │ ├── RLMObject+Extension.h │ │ │ │ ├── RLMObject+Extension.m │ │ │ │ ├── SheetRealmModel.h │ │ │ │ ├── SheetRealmModel.m │ │ │ │ ├── SongRealmModel.h │ │ │ │ ├── SongRealmModel.m │ │ │ │ ├── UserModel.h │ │ │ │ └── UserModel.m │ │ ├── SGAdvertScrollView │ │ │ ├── LinkageView │ │ │ │ ├── LinkageConfig.h │ │ │ │ ├── LinkageConfig.m │ │ │ │ ├── LinkageView.h │ │ │ │ └── LinkageView.m │ │ │ ├── SGAdvertScrollView │ │ │ │ ├── SGAdvertScrollView.h │ │ │ │ └── SGAdvertScrollView.m │ │ │ └── SGPagingView │ │ │ │ ├── Category │ │ │ │ ├── UIView+SGPagingView.h │ │ │ │ └── UIView+SGPagingView.m │ │ │ │ ├── SGPageContent │ │ │ │ ├── SGPageContentScrollView.h │ │ │ │ ├── SGPageContentScrollView.m │ │ │ │ ├── SGPageContentView.h │ │ │ │ └── SGPageContentView.m │ │ │ │ ├── SGPageTitle │ │ │ │ ├── SGPageTitleView.h │ │ │ │ ├── SGPageTitleView.m │ │ │ │ ├── SGPageTitleViewConfigure.h │ │ │ │ └── SGPageTitleViewConfigure.m │ │ │ │ └── SGPagingView.h │ │ └── UMShare │ │ │ ├── UMSocialManager+Extension.h │ │ │ └── UMSocialManager+Extension.m │ └── Utils │ │ ├── CountDown │ │ ├── CountDown.h │ │ └── CountDown.m │ │ ├── EmptyView │ │ ├── EmptyView.h │ │ ├── EmptyView.m │ │ ├── UIView+KKEmptyView.h │ │ └── UIView+KKEmptyView.m │ │ ├── FakeData │ │ ├── FakeData.h │ │ ├── FakeData.m │ │ ├── big_img1.jpeg │ │ ├── big_img2.jpeg │ │ ├── big_img3.jpeg │ │ ├── big_img4.jpeg │ │ ├── small_img1.jpeg │ │ ├── small_img2.jpeg │ │ ├── small_img3.jpeg │ │ ├── small_img4.jpeg │ │ ├── 后来.lrc │ │ └── 后来.mp3 │ │ ├── GradientButton │ │ ├── GradientButton.h │ │ └── GradientButton.m │ │ ├── KKHeader │ │ ├── KKHeaderView.h │ │ └── KKHeaderView.m │ │ ├── KKNavigationBar │ │ ├── KKNavigationBar.h │ │ ├── KKNavigationBar.m │ │ └── KKNavigationBar.xib │ │ ├── MusicItem │ │ ├── MusicItem.h │ │ ├── MusicItem.m │ │ ├── MusicItemConst.h │ │ └── MusicItemConst.m │ │ ├── Popup │ │ ├── KKPopup │ │ │ ├── KKPopupView.h │ │ │ └── KKPopupView.m │ │ ├── KKScreenShot │ │ │ ├── KKScreenShot.h │ │ │ ├── KKScreenShot.m │ │ │ ├── KKScreenShot.xib │ │ │ ├── KKScreenShotContent.h │ │ │ ├── KKScreenShotContent.m │ │ │ └── KKScreenShotContent.xib │ │ ├── KKShare │ │ │ ├── KKShare.h │ │ │ ├── KKShare.m │ │ │ ├── KKShare.xib │ │ │ ├── KKShareContent.h │ │ │ ├── KKShareContent.m │ │ │ └── KKShareContent.xib │ │ └── KKSheet │ │ │ ├── KKSheet.h │ │ │ ├── KKSheet.m │ │ │ ├── KKSheet.xib │ │ │ ├── KKSheetCell.h │ │ │ ├── KKSheetCell.m │ │ │ ├── KKSheetCell.xib │ │ │ ├── KKSheetContent.h │ │ │ ├── KKSheetContent.m │ │ │ └── KKSheetContent.xib │ │ ├── Single.h │ │ ├── ThirdLogView │ │ ├── ThirdLogView.h │ │ ├── ThirdLogView.m │ │ └── ThirdLogView.xib │ │ └── TimeTool │ │ ├── TimeTool.h │ │ └── TimeTool.m │ ├── Info.plist │ └── main.m ├── imiss-react-master ├── .gitignore ├── README.md ├── config-overrides.js ├── config │ ├── env.js │ ├── jest │ │ ├── cssTransform.js │ │ └── fileTransform.js │ ├── paths.js │ ├── webpack.config.dev.js │ ├── webpack.config.prod.js │ └── webpackDevServer.config.js ├── package-lock.json ├── package.json ├── public │ ├── favicon.ico │ ├── index.html │ └── manifest.json ├── scripts │ ├── build.js │ ├── start.js │ └── test.js ├── src │ ├── App.css │ ├── App.js │ ├── App.test.js │ ├── assets │ │ ├── css │ │ │ ├── about.less │ │ │ ├── base.less │ │ │ ├── header.less │ │ │ ├── home.less │ │ │ ├── homePopular.less │ │ │ ├── mine.less │ │ │ ├── ranking.less │ │ │ ├── sheet.less │ │ │ └── tabbar.less │ │ └── img │ │ │ ├── baseline-keyboard_arrow_left-24px.svg │ │ │ ├── baseline-keyboard_arrow_right-24px.svg │ │ │ ├── cm2_set_icn_about.png │ │ │ ├── cm2_set_icn_about@2x.png │ │ │ ├── cm2_set_icn_about@3x.png │ │ │ ├── cm2_set_icn_alamclock.png │ │ │ ├── cm2_set_icn_alamclock@2x.png │ │ │ ├── cm2_set_icn_alamclock@3x.png │ │ │ ├── cm2_set_icn_combo.png │ │ │ ├── cm2_set_icn_combo@2x.png │ │ │ ├── cm2_set_icn_combo@3x.png │ │ │ ├── cm2_set_icn_edit.png │ │ │ ├── cm2_set_icn_edit@2x.png │ │ │ ├── cm2_set_icn_edit@3x.png │ │ │ ├── cm2_set_icn_level.png │ │ │ ├── cm2_set_icn_level@2x.png │ │ │ ├── cm2_set_icn_level@3x.png │ │ │ ├── cm2_set_icn_mail.png │ │ │ ├── cm2_set_icn_mail@2x.png │ │ │ ├── cm2_set_icn_mail@3x.png │ │ │ ├── cm2_set_icn_musician.png │ │ │ ├── cm2_set_icn_musician@2x.png │ │ │ ├── cm2_set_icn_musician@3x.png │ │ │ ├── cm2_set_icn_night.png │ │ │ ├── cm2_set_icn_night@2x.png │ │ │ ├── cm2_set_icn_night@3x.png │ │ │ ├── cm2_set_icn_scan.png │ │ │ ├── cm2_set_icn_scan@2x.png │ │ │ ├── cm2_set_icn_scan@3x.png │ │ │ ├── cm2_set_icn_set.png │ │ │ ├── cm2_set_icn_set@2x.png │ │ │ ├── cm2_set_icn_set@3x.png │ │ │ ├── cm2_set_icn_share.png │ │ │ ├── cm2_set_icn_share@2x.png │ │ │ ├── cm2_set_icn_share@3x.png │ │ │ ├── cm2_set_icn_skin.png │ │ │ ├── cm2_set_icn_skin@2x.png │ │ │ ├── cm2_set_icn_skin@3x.png │ │ │ ├── cm2_set_icn_store.png │ │ │ ├── cm2_set_icn_store@2x.png │ │ │ ├── cm2_set_icn_store@3x.png │ │ │ ├── cm2_set_icn_time.png │ │ │ ├── cm2_set_icn_time@2x.png │ │ │ ├── cm2_set_icn_time@3x.png │ │ │ ├── cm4_btm_icn_account@3x.png │ │ │ ├── cm4_btm_icn_account_prs@3x.png │ │ │ ├── cm4_btm_icn_discovery@3x.png │ │ │ ├── cm4_btm_icn_discovery_prs@3x.png │ │ │ ├── cm4_btm_icn_music@3x.png │ │ │ ├── cm4_btm_icn_music_new@3x.png │ │ │ ├── cm4_btm_icn_music_new_prs@3x.png │ │ │ ├── cm4_btm_icn_music_prs@3x.png │ │ │ ├── next.png │ │ │ └── placeholder_square.png │ ├── component │ │ ├── Header.js │ │ └── Share.js │ ├── index.css │ ├── index.js │ ├── logo.svg │ ├── module │ │ ├── home │ │ │ ├── home.js │ │ │ ├── homePopular.js │ │ │ ├── homeRecommend.js │ │ │ └── ranking.js │ │ ├── mine │ │ │ ├── about.js │ │ │ └── mine.js │ │ ├── sheet │ │ │ └── sheet.js │ │ └── tabbar │ │ │ └── tabbar.js │ ├── network │ │ └── server.js │ ├── redux │ │ ├── action │ │ │ └── homeRecommendAction.js │ │ ├── reducer │ │ │ ├── HomeRecommendReducer.js │ │ │ └── index.js │ │ ├── saga │ │ │ ├── HomeRecommendSagas.js │ │ │ └── index.js │ │ └── store │ │ │ └── Store.js │ ├── serviceWorker.js │ └── util │ │ └── public.js └── yarn.lock ├── imiss ├── .babelrc ├── .buckconfig ├── .flowconfig ├── .gitattributes ├── .gitignore ├── .watchmanconfig ├── App.js ├── Home.js ├── android │ ├── app │ │ ├── BUCK │ │ ├── build.gradle │ │ ├── proguard-rules.pro │ │ └── src │ │ │ └── main │ │ │ ├── AndroidManifest.xml │ │ │ ├── java │ │ │ └── com │ │ │ │ └── imiss │ │ │ │ ├── MainActivity.java │ │ │ │ └── MainApplication.java │ │ │ └── res │ │ │ ├── mipmap-hdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-mdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ ├── mipmap-xxxhdpi │ │ │ ├── ic_launcher.png │ │ │ └── ic_launcher_round.png │ │ │ └── values │ │ │ ├── strings.xml │ │ │ └── styles.xml │ ├── build.gradle │ ├── gradle.properties │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ ├── gradlew │ ├── gradlew.bat │ ├── keystores │ │ ├── BUCK │ │ └── debug.keystore.properties │ └── settings.gradle ├── app.json ├── index.js ├── ios │ ├── imiss-tvOS │ │ └── Info.plist │ ├── imiss-tvOSTests │ │ └── Info.plist │ ├── imiss.xcodeproj │ │ ├── project.pbxproj │ │ └── xcshareddata │ │ │ └── xcschemes │ │ │ ├── imiss-tvOS.xcscheme │ │ │ └── imiss.xcscheme │ ├── imiss │ │ ├── AppDelegate.h │ │ ├── AppDelegate.m │ │ ├── Base.lproj │ │ │ └── LaunchScreen.xib │ │ ├── Images.xcassets │ │ │ ├── AppIcon.appiconset │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── Info.plist │ │ └── main.m │ └── imissTests │ │ ├── Info.plist │ │ └── imissTests.m ├── package.json └── yarn.lock └── imissMusic.paw /Design/桌面端/桌面版1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/桌面端/桌面版1.jpg -------------------------------------------------------------------------------- /Design/桌面端/桌面版2.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/桌面端/桌面版2.mp4 -------------------------------------------------------------------------------- /Design/桌面端/桌面版3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/桌面端/桌面版3.gif -------------------------------------------------------------------------------- /Design/桌面端/桌面版4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/桌面端/桌面版4.png -------------------------------------------------------------------------------- /Design/桌面端/桌面版5.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/桌面端/桌面版5.mp4 -------------------------------------------------------------------------------- /Design/桌面端/桌面版6.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/桌面端/桌面版6.mp4 -------------------------------------------------------------------------------- /Design/移动端/移动端1.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/移动端/移动端1.gif -------------------------------------------------------------------------------- /Design/移动端/移动端2.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/移动端/移动端2.mp4 -------------------------------------------------------------------------------- /Design/移动端/移动端3.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/移动端/移动端3.mp4 -------------------------------------------------------------------------------- /Design/设计图.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/Design/设计图.sketch -------------------------------------------------------------------------------- /GIF/夜间模式.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/GIF/夜间模式.gif -------------------------------------------------------------------------------- /GIF/播放页.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/GIF/播放页.gif -------------------------------------------------------------------------------- /GIF/歌单列表.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/GIF/歌单列表.gif -------------------------------------------------------------------------------- /GIF/首页欢迎.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/GIF/首页欢迎.gif -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Yeqiang 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/.idea/encodings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/.idea/imiss.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 21 | 22 | 24 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/imiss/__init__.py: -------------------------------------------------------------------------------- 1 | import pymysql 2 | pymysql.install_as_MySQLdb() -------------------------------------------------------------------------------- /imiss-django-master/imiss/imiss/category/model_tool.py: -------------------------------------------------------------------------------- 1 | import uuid 2 | import os 3 | 4 | # 管理平台上传图片 5 | def user_directory_path(instance, filename): 6 | ext = filename.split('.')[-1] 7 | filename = '{}.{}'.format(uuid.uuid4().hex[:10], ext) 8 | str = os.path.join("music", filename) 9 | return str 10 | 11 | 12 | # 保存APP上传的图片 13 | def upload_image(f, song): 14 | file_name = song 15 | baseDir = os.path.dirname(os.path.abspath("personico")) 16 | jpgdir = os.path.join(baseDir, 'media') 17 | filename = os.path.join(jpgdir, file_name) 18 | print(filename) 19 | fobj = open(filename, 'wb') 20 | for chrunk in f.chunks(): 21 | fobj.write(chrunk) 22 | fobj.close() 23 | 24 | 25 | # 返回数据封装 26 | def response_data(status, message, data): 27 | return { 28 | "status": status, 29 | "message": message, 30 | "data": data, 31 | } -------------------------------------------------------------------------------- /imiss-django-master/imiss/imiss/category/sql_tool.py: -------------------------------------------------------------------------------- 1 | from django.db import connection, transaction 2 | 3 | 4 | """ 5 | Rawqueryset对象增加len()方法 6 | Attributes: 7 | query: sql查询结果 8 | """ 9 | def add_len_to_raw_query(query): 10 | from django.db.models.query import RawQuerySet 11 | def __len__(self): 12 | from django.db import connection 13 | sql = 'select count(*) from (%s) as newsql' % query.raw_query 14 | with connection.cursor() as cursor: 15 | cursor.execute(sql) 16 | row = cursor.fetchone() 17 | return row[0] 18 | setattr(RawQuerySet, '__len__', __len__) 19 | 20 | 21 | """ 22 | 执行除查询外其他SQL语句 23 | Attributes: 24 | sql: sql语句 25 | Return: 26 | True: 执行成功 27 | False: 执行失败 28 | """ 29 | def execute_sql_operating(sql): 30 | print(sql) 31 | try: 32 | cursor = connection.cursor() 33 | cursor.execute(sql) 34 | row = cursor.fetchone() 35 | return True 36 | except Exception: 37 | return False 38 | 39 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/imiss/middleware.py: -------------------------------------------------------------------------------- 1 | from django.http import HttpResponse 2 | import json 3 | import time 4 | from django.utils.deprecation import MiddlewareMixin 5 | 6 | 7 | class dataMiddleware(MiddlewareMixin): 8 | def process_response(self, request, response): 9 | path = request.path 10 | if 'admin' in path or 'media' in path: 11 | return response 12 | else: 13 | time.sleep(0.5) 14 | return HttpResponse(json.dumps(response), content_type="application/json") 15 | 16 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/imiss/urls.py: -------------------------------------------------------------------------------- 1 | """imiss URL Configuration 2 | 3 | The `urlpatterns` list routes URLs to views. For more information please see: 4 | https://docs.djangoproject.com/en/2.1/topics/http/urls/ 5 | Examples: 6 | Function views 7 | 1. Add an import: from my_app import views 8 | 2. Add a URL to urlpatterns: path('', views.home, name='home') 9 | Class-based views 10 | 1. Add an import: from other_app.views import Home 11 | 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') 12 | Including another URLconf 13 | 1. Import the include() function: from django.urls import include, path 14 | 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) 15 | """ 16 | from django.contrib import admin 17 | from django.urls import path 18 | from django.conf.urls import include 19 | from django.conf.urls.static import static 20 | from . import settings 21 | 22 | urlpatterns = [ 23 | path('admin/', admin.site.urls), 24 | path('music/', include('music.urls')), 25 | ] 26 | 27 | urlpatterns += static('/media/', document_root=settings.MEDIA_ROOT) #加上这一行 -------------------------------------------------------------------------------- /imiss-django-master/imiss/imiss/wsgi.py: -------------------------------------------------------------------------------- 1 | """ 2 | WSGI config for imiss project. 3 | 4 | It exposes the WSGI callable as a module-level variable named ``application``. 5 | 6 | For more information on this file, see 7 | https://docs.djangoproject.com/en/2.1/howto/deployment/wsgi/ 8 | """ 9 | 10 | import os 11 | 12 | from django.core.wsgi import get_wsgi_application 13 | 14 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'imiss.settings') 15 | 16 | application = get_wsgi_application() 17 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/manage.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | import os 3 | import sys 4 | 5 | if __name__ == '__main__': 6 | os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'imiss.settings') 7 | try: 8 | from django.core.management import execute_from_command_line 9 | except ImportError as exc: 10 | raise ImportError( 11 | "Couldn't import Django. Are you sure it's installed and " 12 | "available on your PYTHONPATH environment variable? Did you " 13 | "forget to activate a virtual environment?" 14 | ) from exc 15 | execute_from_command_line(sys.argv) 16 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/000c65fd21.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/000c65fd21.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/2c48f8b60d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/2c48f8b60d.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/43d219d422.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/43d219d422.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/4d1dae6e45.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/4d1dae6e45.mp3 -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/537c42032e.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/537c42032e.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/5749e53da3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/5749e53da3.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/61341bd1eb.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/61341bd1eb.mp3 -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/b41fc14732.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/b41fc14732.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/b73118ad2b.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/b73118ad2b.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/c74f5d4933.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/c74f5d4933.mp3 -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/d210008636.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/d210008636.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/e1660aab31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/e1660aab31.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/e1ce2291fc.lrc: -------------------------------------------------------------------------------- 1 | [ti:风雨无阻] 2 | [ar:周华健] 3 | [al:风雨无阻] 4 | 5 | [00:00.10]风雨无阻 6 | [00:03.00]作词:李子恒 作曲:李子恒 7 | [00:06.00]演唱:周华健 8 | [00:12.00] 9 | [00:20.72]给你我的全部 10 | [00:24.60]你是我今生唯一的赌注 11 | [00:28.89]只留下一段岁月 12 | [00:31.17]让我无怨无悔全心的付出 13 | [00:37.42]怕你忧伤怕你哭 14 | [00:41.20]怕你孤单怕你糊涂 15 | [00:45.16]红尘千山万里路 16 | [00:49.23]我可以朝朝暮暮 17 | [00:53.23][02:18.42]给你一条我的路 18 | [00:57.59][02:22.50]你是我一生不停的脚步 19 | [01:01.92][02:26.80]让我走出一片天空 20 | [01:04.11][02:29.05]让你尽情飞舞放心的追逐 21 | [01:10.16][02:34.88]爱是漫长的旅途 22 | [01:14.21][02:39.10]梦有快乐梦有痛苦 23 | [01:18.27][02:43.25]悲欢离合人间路 24 | [01:22.13][02:47.34]我可以缝缝补补 25 | [01:28.79][02:53.82][03:31.11]提着昨日种种千辛万苦 26 | [01:31.70][02:56.45][03:33.73]向明天换一些美满和幸福 27 | [01:37.25][03:02.34][03:38.99]爱你够不够多 28 | [01:39.57][03:04.26][03:41.10]对你够不够好 29 | [01:41.98][03:06.78][03:43.51]可以要求不要不在乎 30 | [01:45.35][03:10.43][03:47.75]不愿让你看见我的伤处 31 | [01:48.24][03:12.89][03:50.19]是曾经无悔的风雨无阻 32 | [01:54.01][03:18.43][03:55.83]拥有够不够多 33 | [01:55.86][03:20.84][03:57.98]梦的够不够好 34 | [01:57.83][03:22.59][03:59.73]可以追求不认输 35 | [02:05.26][03:29.01][04:06.51] 36 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/ee39416ea9.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/ee39416ea9.png -------------------------------------------------------------------------------- /imiss-django-master/imiss/media/music/eed2099321.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/media/music/eed2099321.mp3 -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/music/__init__.py -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/admin.py: -------------------------------------------------------------------------------- 1 | from django.contrib import admin 2 | from .models import * 3 | 4 | admin.site.register(Song) 5 | admin.site.register(Sheet) 6 | admin.site.register(Song_Sheet) 7 | admin.site.register(Resource) 8 | admin.site.register(Share) 9 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/apps.py: -------------------------------------------------------------------------------- 1 | from django.apps import AppConfig 2 | 3 | 4 | class MusicConfig(AppConfig): 5 | name = 'music' 6 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/migrations/0002_auto_20180930_2100.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 2.1.1 on 2018-09-30 13:00 2 | 3 | from django.db import migrations, models 4 | 5 | 6 | class Migration(migrations.Migration): 7 | 8 | dependencies = [ 9 | ('music', '0001_initial'), 10 | ] 11 | 12 | operations = [ 13 | migrations.AlterField( 14 | model_name='song', 15 | name='detail', 16 | field=models.CharField(max_length=1000, verbose_name='详情'), 17 | ), 18 | ] 19 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/migrations/0003_auto_20180930_2303.py: -------------------------------------------------------------------------------- 1 | # Generated by Django 2.1.1 on 2018-09-30 15:03 2 | 3 | from django.db import migrations, models 4 | import django.db.models.deletion 5 | 6 | 7 | class Migration(migrations.Migration): 8 | 9 | dependencies = [ 10 | ('music', '0002_auto_20180930_2100'), 11 | ] 12 | 13 | operations = [ 14 | migrations.AlterField( 15 | model_name='resource', 16 | name='song', 17 | field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='music.Song', verbose_name='歌曲外键'), 18 | ), 19 | ] 20 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/migrations/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-django-master/imiss/music/migrations/__init__.py -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/tests.py: -------------------------------------------------------------------------------- 1 | from django.test import TestCase 2 | 3 | # Create your tests here. 4 | -------------------------------------------------------------------------------- /imiss-django-master/imiss/music/urls.py: -------------------------------------------------------------------------------- 1 | #!usr/bin/python 2 | # -*- coding:UTF-8 -*- 3 | 4 | from django.conf.urls import url 5 | from django.urls import path 6 | from .views import * 7 | 8 | urlpatterns = [ 9 | # 受欢迎歌曲 10 | path('getPopularRequest.action', get_popular_request), 11 | # 歌单列表 12 | path('getSheetRequest.action', get_sheet_request), 13 | # 通过歌单找歌曲 14 | path('getSongsWithSheetRequest.action', get_songs_with_sheet_request), 15 | # 歌曲 16 | path('getSongRequest.action', get_song_request), 17 | # 获取资源 18 | path('getResourceRequest.action', get_resource_request), 19 | # 分享成功 20 | path('insertShareRequest.action', insert_share_request), 21 | ] -------------------------------------------------------------------------------- /imiss-ios-master/Podfile: -------------------------------------------------------------------------------- 1 | platform :ios, '8.0' 2 | use_frameworks! 3 | 4 | target 'music' do 5 | pod 'MJRefresh', '3.1.0' 6 | pod 'MBProgressHUD', '1.1.0' 7 | pod 'SDCycleScrollView', '1.75' 8 | pod 'Realm', '3.7.6' 9 | # 动画 10 | pod 'pop', '1.0.10' 11 | 12 | pod 'JZNavigationExtension', '1.5.0' 13 | # 网络 14 | pod 'AFNetworking', '3.1.0' 15 | # 解析 16 | pod 'MJExtension', '3.0.0' 17 | # 友盟分享、第三方登录 18 | pod 'UMCCommon' 19 | pod 'UMCSecurityPlugins' 20 | # 集成微信(精简版0.2M) 21 | pod 'UMCShare/Social/ReducedWeChat' 22 | # 集成QQ/QZone/TIM(精简版0.5M) 23 | pod 'UMCShare/Social/ReducedQQ' 24 | # 集成新浪微博(精简版1M) 25 | pod 'UMCShare/Social/ReducedSina' 26 | 27 | end 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /imiss-ios-master/music.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /imiss-ios-master/music.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDEDidComputeMac32BitWarning 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "minimum-system-version" : "7.0", 7 | "scale" : "2x" 8 | }, 9 | { 10 | "orientation" : "portrait", 11 | "idiom" : "iphone", 12 | "minimum-system-version" : "7.0", 13 | "subtype" : "retina4", 14 | "scale" : "2x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_account-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account-ipx.imageset/cm4_btm_icn_account-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account-ipx.imageset/cm4_btm_icn_account-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm4_btm_icn_account.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm4_btm_icn_account@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm4_btm_icn_account@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/cm4_btm_icn_account.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/cm4_btm_icn_account.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/cm4_btm_icn_account@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/cm4_btm_icn_account@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/cm4_btm_icn_account@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account.imageset/cm4_btm_icn_account@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_account_prs-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs-ipx.imageset/cm4_btm_icn_account_prs-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs-ipx.imageset/cm4_btm_icn_account_prs-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "cm4_btm_icn_account_prs@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "cm4_btm_icn_account_prs@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs.imageset/cm4_btm_icn_account_prs@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs.imageset/cm4_btm_icn_account_prs@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs.imageset/cm4_btm_icn_account_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_account_prs.imageset/cm4_btm_icn_account_prs@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_discovery-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery-ipx.imageset/cm4_btm_icn_discovery-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery-ipx.imageset/cm4_btm_icn_discovery-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm4_btm_icn_discovery.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm4_btm_icn_discovery@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm4_btm_icn_discovery@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/cm4_btm_icn_discovery.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/cm4_btm_icn_discovery.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/cm4_btm_icn_discovery@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/cm4_btm_icn_discovery@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/cm4_btm_icn_discovery@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery.imageset/cm4_btm_icn_discovery@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_discovery_prs-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs-ipx.imageset/cm4_btm_icn_discovery_prs-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs-ipx.imageset/cm4_btm_icn_discovery_prs-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm4_btm_icn_discovery_prs.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm4_btm_icn_discovery_prs@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm4_btm_icn_discovery_prs@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/cm4_btm_icn_discovery_prs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/cm4_btm_icn_discovery_prs.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/cm4_btm_icn_discovery_prs@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/cm4_btm_icn_discovery_prs@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/cm4_btm_icn_discovery_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_discovery_prs.imageset/cm4_btm_icn_discovery_prs@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_music-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music-ipx.imageset/cm4_btm_icn_music-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music-ipx.imageset/cm4_btm_icn_music-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm4_btm_icn_music.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm4_btm_icn_music@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm4_btm_icn_music@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/cm4_btm_icn_music.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/cm4_btm_icn_music.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/cm4_btm_icn_music@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/cm4_btm_icn_music@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/cm4_btm_icn_music@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music.imageset/cm4_btm_icn_music@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_music_new-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new-ipx.imageset/cm4_btm_icn_music_new-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new-ipx.imageset/cm4_btm_icn_music_new-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm4_btm_icn_music_new.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm4_btm_icn_music_new@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm4_btm_icn_music_new@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/cm4_btm_icn_music_new.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/cm4_btm_icn_music_new.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/cm4_btm_icn_music_new@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/cm4_btm_icn_music_new@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/cm4_btm_icn_music_new@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new.imageset/cm4_btm_icn_music_new@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_music_new_prs-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs-ipx.imageset/cm4_btm_icn_music_new_prs-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs-ipx.imageset/cm4_btm_icn_music_new_prs-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "cm4_btm_icn_music_new_prs@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "cm4_btm_icn_music_new_prs@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs.imageset/cm4_btm_icn_music_new_prs@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs.imageset/cm4_btm_icn_music_new_prs@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs.imageset/cm4_btm_icn_music_new_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_new_prs.imageset/cm4_btm_icn_music_new_prs@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs-ipx.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "scale" : "2x" 10 | }, 11 | { 12 | "idiom" : "universal", 13 | "filename" : "cm4_btm_icn_music_prs-ipx@3x.png", 14 | "scale" : "3x" 15 | } 16 | ], 17 | "info" : { 18 | "version" : 1, 19 | "author" : "xcode" 20 | } 21 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs-ipx.imageset/cm4_btm_icn_music_prs-ipx@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs-ipx.imageset/cm4_btm_icn_music_prs-ipx@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x" 6 | }, 7 | { 8 | "idiom" : "universal", 9 | "filename" : "cm4_btm_icn_music_prs@2x.png", 10 | "scale" : "2x" 11 | }, 12 | { 13 | "idiom" : "universal", 14 | "filename" : "cm4_btm_icn_music_prs@3x.png", 15 | "scale" : "3x" 16 | } 17 | ], 18 | "info" : { 19 | "version" : 1, 20 | "author" : "xcode" 21 | } 22 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs.imageset/cm4_btm_icn_music_prs@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs.imageset/cm4_btm_icn_music_prs@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs.imageset/cm4_btm_icn_music_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/Tabbar/cm4_btm_icn_music_prs.imageset/cm4_btm_icn_music_prs@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm2_lrc_time_btn_play.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm2_lrc_time_btn_play@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm2_lrc_time_btn_play@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/cm2_lrc_time_btn_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/cm2_lrc_time_btn_play.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/cm2_lrc_time_btn_play@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/cm2_lrc_time_btn_play@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/cm2_lrc_time_btn_play@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/cm2_lrc_time_btn_play.imageset/cm2_lrc_time_btn_play@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "cm2_play_disc.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "cm2_play_disc@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "cm2_play_disc@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/cm2_play_disc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/cm2_play_disc.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/cm2_play_disc@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/cm2_play_disc@2x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/cm2_play_disc@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Assets.xcassets/cm2_play_disc.imageset/cm2_play_disc@3x.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/AppDelegate/AppDelegate+ScreenShot.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate+ScreenShot.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface AppDelegate (ScreenShot) 14 | 15 | // 截屏事件 16 | - (void)screenshotNotification; 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/AppDelegate/AppDelegate+UMengShare.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate+UMengShare.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "AppDelegate.h" 10 | #import 11 | 12 | @interface AppDelegate (UMengShare) 13 | 14 | - (void)configUSharePlatforms; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/AppDelegate/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/13. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface AppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/controller/BaseItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseItem.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/23. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | #pragma mark - NS_ENUM 12 | typedef NS_ENUM(NSUInteger, BaseItemStatus) { 13 | BaseItemStatusTextLeft, // 文字在左 14 | BaseItemStatusTextTop, // 文字在上 15 | BaseItemStatusTextRight, // 文字在右 16 | BaseItemStatusTextBottom, // 文字在下 17 | BaseItemStatusTextOnly, // 只有文字 18 | BaseItemStatusIconOnly, // 只有图片 19 | }; 20 | 21 | #pragma mark - 声明 22 | @interface BaseItem : UIButton 23 | 24 | // 样式 25 | @property (nonatomic, assign) BaseItemStatus status; 26 | // 文字 27 | @property (nonatomic, strong) NSString *name; 28 | // 图片 29 | @property (nonatomic, strong) NSString *icon; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/controller/BaseNavigationController.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseNavigationController.h 3 | // iOS 4 | // 5 | // Created by RY on 2018/3/19. 6 | // Copyright © 2018年 KK. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BaseNavigationController : UINavigationController 12 | 13 | #pragma mark - 初始化 14 | + (instancetype)initWithRootViewController:(UIViewController *)vc; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/controller/BaseTabBarController.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseTabBarController.h 3 | // iOS 4 | // 5 | // Created by RY on 2018/3/19. 6 | // Copyright © 2018年 KK. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BaseTabBarController : UITabBarController 12 | 13 | - (void)hideTabbar:(BOOL)hidden; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/model/BaseModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseModel.h 3 | // iOS 4 | // 5 | // Created by 郑业强 on 2018/4/1. 6 | // Copyright © 2018年 郑业强. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - 声明 12 | @interface BaseModel : NSObject 13 | 14 | 15 | @end 16 | 17 | 18 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/model/BaseModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // BaseModel.m 3 | // iOS 4 | // 5 | // Created by 郑业强 on 2018/4/1. 6 | // Copyright © 2018年 郑业强. All rights reserved. 7 | // 8 | 9 | #import "BaseModel.h" 10 | 11 | @implementation BaseModel 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseCollectionCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseCollectionCell.h 3 | // coding-ios-master 4 | // 5 | // Created by 郑业强 on 2018/5/5. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BaseCollectionCell : UICollectionViewCell 12 | 13 | /// 创建cell 14 | + (instancetype)loadItem:(UICollectionView *)collection index:(NSIndexPath *)index; 15 | /// 初始化UI 16 | - (void)initUI; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseCollectionCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // BaseCollectionCell.m 3 | // coding-ios-master 4 | // 5 | // Created by 郑业强 on 2018/5/5. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseCollectionCell.h" 10 | 11 | @implementation BaseCollectionCell 12 | 13 | // 创建cell 14 | + (instancetype)loadItem:(UICollectionView *)collection index:(NSIndexPath *)index { 15 | NSString *name = NSStringFromClass(self); 16 | BaseCollectionCell *cell = [collection dequeueReusableCellWithReuseIdentifier:name forIndexPath:index]; 17 | [cell initUI]; 18 | return cell; 19 | } 20 | 21 | // 初始化UI 22 | - (void)initUI { 23 | 24 | } 25 | 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseCollectionReusableView.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseCollectionReusableView.h 3 | // coding-ios-master 4 | // 5 | // Created by 郑业强 on 2018/5/5. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BaseCollectionReusableView : UICollectionReusableView 12 | 13 | + (instancetype)initWithCollection:(UICollectionView *)collection kind:(NSString *)kind indexPath:(NSIndexPath *)indexPath; 14 | - (void)initUI; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseCollectionReusableView.m: -------------------------------------------------------------------------------- 1 | // 2 | // BaseCollectionReusableView.m 3 | // coding-ios-master 4 | // 5 | // Created by 郑业强 on 2018/5/5. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseCollectionReusableView.h" 10 | 11 | @implementation BaseCollectionReusableView 12 | 13 | + (instancetype)initWithCollection:(UICollectionView *)collection kind:(NSString *)kind indexPath:(NSIndexPath *)indexPath { 14 | NSString *identifier = NSStringFromClass(self); 15 | BaseCollectionReusableView *view = [collection dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:identifier forIndexPath:indexPath]; 16 | return view; 17 | } 18 | 19 | - (void)initUI { 20 | 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseCollectionView.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseCollectionView.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/2. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BaseCollectionView : UICollectionView 12 | 13 | - (void)initUI; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseCollectionView.m: -------------------------------------------------------------------------------- 1 | // 2 | // BaseCollectionView.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/2. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseCollectionView.h" 10 | 11 | #pragma mark - 声明 12 | @interface BaseCollectionView() 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation BaseCollectionView 18 | 19 | - (instancetype)initWithFrame:(CGRect)frame collectionViewLayout:(UICollectionViewLayout *)layout { 20 | if (self = [super initWithFrame:frame collectionViewLayout:layout]) { 21 | [self initUI]; 22 | } 23 | return self; 24 | } 25 | - (instancetype)initWithCoder:(NSCoder *)aDecoder { 26 | if (self = [super initWithCoder:aDecoder]) { 27 | [self initUI]; 28 | } 29 | return self; 30 | } 31 | - (instancetype)initWithFrame:(CGRect)frame { 32 | if (self = [super initWithFrame:frame]) { 33 | [self initUI]; 34 | } 35 | return self; 36 | } 37 | - (void)initUI { 38 | 39 | } 40 | 41 | @end 42 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseService.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseService.h 3 | // coding-ios-master 4 | // 5 | // Created by MAC on 2018/5/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | //#import "NSString+API.h" 11 | #import "BaseModel.h" 12 | 13 | @interface BaseService : NSObject 14 | 15 | //typedef void(^ServiceCompl ete)(__kindof BaseModel *model, ServiceType result); 16 | 17 | @end 18 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseService.m: -------------------------------------------------------------------------------- 1 | // 2 | // BaseService.m 3 | // coding-ios-master 4 | // 5 | // Created by MAC on 2018/5/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseService.h" 10 | 11 | @implementation BaseService 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseTabBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseTabBar.h 3 | // weibo-OC 4 | // 5 | // Created by Oboe_b on 16/8/29. 6 | // Copyright © 2016年 Oboe_b. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - typedef 12 | typedef void (^BaseTabBarClick)(NSInteger index); 13 | 14 | #pragma mark - 声明 15 | @interface BaseTabBar : UITabBar 16 | 17 | @property (nonatomic, copy ) BaseTabBarClick click; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Base/view/BaseTableCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // BaseTableCell.h 3 | // KKTest 4 | // 5 | // Created by RY on 17/6/12. 6 | // Copyright © 2017年 OuDa. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BaseTableCell : UITableViewCell 12 | 13 | /// 加载第一个NIB 14 | + (instancetype)loadFirstNib:(UITableView *)table; 15 | 16 | /// 加载最后一个nib 17 | + (instancetype)loadLastNib:(UITableView *)table; 18 | 19 | /// 从代码创建cell 20 | + (instancetype)loadCode:(UITableView *)table; 21 | 22 | /// 加载指定xib 23 | + (instancetype)loadNib:(NSInteger)index frame:(UITableView *)table; 24 | 25 | - (void)initUI; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/CALayer/CALayer+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // CALayer+Extension.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface CALayer (Extension) 12 | 13 | - (UIImage *)imageFromView; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/CALayer/CALayer+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // CALayer+Extension.m 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "CALayer+Extension.h" 10 | 11 | @implementation CALayer (Extension) 12 | 13 | - (UIImage *)imageFromView { 14 | CGSize size = self.frame.size; 15 | UIGraphicsBeginImageContextWithOptions(size, NO, [UIScreen mainScreen].scale); 16 | [self renderInContext:UIGraphicsGetCurrentContext()]; 17 | UIImage *image = UIGraphicsGetImageFromCurrentImageContext(); 18 | image = [UIImage imageWithCGImage:image.CGImage scale:[UIScreen mainScreen].scale orientation:UIImageOrientationUp]; 19 | UIGraphicsEndImageContext(); 20 | return image; 21 | } 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/MJRefresh/MJRefreshBackNormalFooter+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // MJRefreshBackNormalFooter+Extension.h 3 | // ZhongLv 4 | // 5 | // Created by MAC on 2018/5/23. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "MJRefreshBackNormalFooter.h" 10 | 11 | @interface MJRefreshBackNormalFooter (Extension) 12 | 13 | + (MJRefreshBackNormalFooter *)getFooterRefreshTarget:(id)target action:(SEL)sel; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/MJRefresh/MJRefreshBackNormalFooter+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // MJRefreshBackNormalFooter+Extension.m 3 | // ZhongLv 4 | // 5 | // Created by MAC on 2018/5/23. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "MJRefreshBackNormalFooter+Extension.h" 10 | 11 | @implementation MJRefreshBackNormalFooter (Extension) 12 | 13 | + (MJRefreshBackNormalFooter *)getFooterRefreshTarget:(id)target action:(SEL)sel { 14 | MJRefreshBackNormalFooter *footer = [MJRefreshBackNormalFooter footerWithRefreshingTarget:target refreshingAction:sel]; 15 | footer.stateLabel.text = @""; 16 | footer.stateLabel.hidden = YES; 17 | return footer; 18 | } 19 | - (void)endRefreshingWithNoMoreData { 20 | [super endRefreshingWithNoMoreData]; 21 | self.arrowView.hidden = YES; 22 | self.stateLabel.hidden = NO; 23 | } 24 | - (void)endRefreshing { 25 | [super endRefreshing]; 26 | self.arrowView.hidden = NO; 27 | self.stateLabel.text = @""; 28 | self.stateLabel.hidden = YES; 29 | } 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/MJRefresh/MJRefreshNormalHeader+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // MJRefreshNormalHeader+Extension.h 3 | // ZhongLv 4 | // 5 | // Created by MAC on 2018/5/4. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "MJRefreshNormalHeader.h" 10 | 11 | @interface MJRefreshNormalHeader (Extension) 12 | 13 | /// 下拉刷新 14 | + (MJRefreshNormalHeader *)getHeaderRefreshTarget:(id)target action:(SEL)sel; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/MJRefresh/MJRefreshNormalHeader+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // MJRefreshNormalHeader+Extension.m 3 | // ZhongLv 4 | // 5 | // Created by MAC on 2018/5/4. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "MJRefreshNormalHeader+Extension.h" 10 | 11 | @implementation MJRefreshNormalHeader (Extension) 12 | 13 | + (MJRefreshNormalHeader *)getHeaderRefreshTarget:(id)target action:(SEL)sel { 14 | MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:target refreshingAction:sel]; 15 | header.stateLabel.hidden = YES; 16 | header.lastUpdatedTimeLabel.hidden = YES; 17 | header.backgroundColor = [UIColor clearColor]; 18 | return header; 19 | } 20 | 21 | 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/NSString/NSAttributedString+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSAttributedString+Extension.h 3 | // music 4 | // 5 | // Created by MAC on 2018/9/26. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSAttributedString (Extension) 12 | 13 | // 创建带阴影的富文本 14 | + (NSAttributedString *)shadowAttrString:(NSString *)string 15 | color:(UIColor *)color 16 | fontSize:(NSInteger)fontSize 17 | alignment:(NSTextAlignment)alignment; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/NSString/NSString+Encryption.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+Encryption.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/18. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (Encryption) 12 | 13 | - (NSString *)md5; 14 | - (NSString *)encryption; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/NSString/NSString+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+Extension.h 3 | // iOS 4 | // 5 | // Created by RY on 2018/3/20. 6 | // Copyright © 2018年 KK. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface NSString (Extension) 12 | 13 | - (CGSize)sizeWithMaxSize:(CGSize)maxSize font:(UIFont *)font; 14 | - (CGSize)sizeWithMaxSize:(CGSize)maxSize font:(UIFont *)font lineHeight:(CGFloat)lineHeight; 15 | // 中文转拼音 16 | + (NSString *)transform:(NSString *)chinese ; 17 | // 10000 转 1万 18 | + (NSString *)getMeasureThousand:(NSInteger)math; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/Theme/UIView+UIConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+UIConfig.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/16. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "ThemeConst.h" 11 | 12 | #pragma mark - 声明 13 | @interface UIView (UIConfig) 14 | 15 | // 主题数据 16 | @property (nonatomic, copy) NSDictionary *themeMap; 17 | // 开启夜间模式: 默认开启 18 | @property (nonatomic, assign, getter=isAllowNight) BOOL allowNight; 19 | 20 | // 主题改变 21 | - (void)themeChanged; 22 | // 当前主题 23 | - (BOOL)isNight; 24 | 25 | @end 26 | 27 | 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIButton/UIButton+BarButtonItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+BarButtonItem.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIButton (BarButtonItem) 12 | 13 | + (instancetype)itemWithImage:(NSString *)image highImage:(NSString *)highImage target:(id)target action:(SEL)action; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIButton/UIButton+BarButtonItem.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIButton+BarButtonItem.m 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "UIButton+BarButtonItem.h" 10 | 11 | @implementation UIButton (BarButtonItem) 12 | 13 | + (instancetype)itemWithImage:(NSString *)image highImage:(NSString *)highImage target:(id)target action:(SEL)action { 14 | UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 15 | [button setImage:[UIImage imageNamed:image] forState:UIControlStateNormal]; 16 | [button setImage:[UIImage imageNamed:highImage] forState:UIControlStateHighlighted]; 17 | [button.imageView setContentMode:UIViewContentModeScaleAspectFit]; 18 | [button addTarget:target action:action forControlEvents:UIControlEventTouchUpInside]; 19 | return button; 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UICollectionView/UICollectionReusableView+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UICollectionReusableView+Extension.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UICollectionReusableView (Extension) 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UICollectionView/UICollectionReusableView+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // UICollectionReusableView+Extension.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "UICollectionReusableView+Extension.h" 10 | 11 | @implementation UICollectionReusableView (Extension) 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIColor/UIColor+HEX.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIColor+HEX.h 3 | // iOS-Categories (https://github.com/shaojiankui/iOS-Categories) 4 | // 5 | // Created by Jakey on 14/12/15. 6 | // Copyright (c) 2014年 www.skyfox.org. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIColor (HEX) 12 | + (UIColor *)colorWithHex:(UInt32)hex; 13 | + (UIColor *)colorWithHex:(UInt32)hex andAlpha:(CGFloat)alpha; 14 | + (UIColor *)colorWithHexString:(NSString *)hexString; 15 | - (NSString *)HEXString; 16 | 17 | + (UIColor *)colorWithWholeRed:(CGFloat)red 18 | green:(CGFloat)green 19 | blue:(CGFloat)blue 20 | alpha:(CGFloat)alpha; 21 | 22 | + (UIColor *)colorWithWholeRed:(CGFloat)red 23 | green:(CGFloat)green 24 | blue:(CGFloat)blue; 25 | 26 | + (UIImage *)createImageWithColor:(UIColor *)color; 27 | @end 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIFont/UIFont+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIFont+Extension.h 3 | // iOS 4 | // 5 | // Created by RY on 2018/3/23. 6 | // Copyright © 2018年 KK. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #define IPHONE6_INCREMENT 2 12 | #define IPHONE6PLUS_INCREMENT 3 13 | #define IPHONE6PLUS_UP_INCREMENT 4 14 | #define IS_IPHONEX_INCREMENT 4 15 | 16 | @interface UIFont (Extension) 17 | 18 | /// 自适应字体大小 19 | + (CGFloat)adjustFontSize:(CGFloat)fontsize; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIFont/UIFont+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIFont+Extension.m 3 | // KKPhoto 4 | // 5 | // Created by 郑业强 on 2017/7/30. 6 | // Copyright © 2017年 郑业强. All rights reserved. 7 | // 8 | 9 | #import "UIFont+Extension.h" 10 | 11 | @implementation UIFont (Extension) 12 | 13 | + (CGFloat)adjustFontSize:(CGFloat)fontsize { 14 | CGFloat newFont; 15 | if (IS_IPHONE_5) { 16 | newFont = fontsize; 17 | } else if (IS_IPHONE_6) { 18 | newFont = fontsize + IPHONE6_INCREMENT; 19 | } else if (IS_IPHONE_6_PLUS) { 20 | newFont = fontsize + IPHONE6PLUS_INCREMENT; 21 | } else if (IS_IPHONE_6_PLUS_UP) { 22 | newFont = fontsize + IPHONE6PLUS_UP_INCREMENT; 23 | } else if (IS_IPHONEX) { 24 | newFont = fontsize + IS_IPHONEX_INCREMENT; 25 | } else { 26 | newFont = fontsize; 27 | } 28 | return newFont; 29 | } 30 | 31 | 32 | 33 | @end 34 | 35 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIImage/UIImage+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Extension.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/9/21. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UIImage (Extension) 12 | 13 | @end 14 | 15 | @interface UIImage (Filter) 16 | 17 | /// 高斯模糊 18 | - (UIImage *)blurryImage:(UIImage *)image withBlurLevel:(CGFloat)blur; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIImage/UIImage+Extension.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIImage+Extension.m 3 | // imiss 4 | // 5 | // Created by MAC on 2018/9/21. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "UIImage+Extension.h" 10 | 11 | @implementation UIImage (Extension) 12 | 13 | @end 14 | 15 | 16 | @implementation UIImage (Filter) 17 | 18 | /// 高斯模糊 19 | - (UIImage *)blurryImage:(UIImage *)image withBlurLevel:(CGFloat)blur { 20 | 21 | CIImage *inputImage = [CIImage imageWithCGImage:image.CGImage]; 22 | 23 | CIFilter *filter = [CIFilter filterWithName:@"CIGaussianBlur" 24 | 25 | keysAndValues:kCIInputImageKey, inputImage, 26 | 27 | @"inputRadius", @(blur), nil]; 28 | 29 | CIImage *outputImage = filter.outputImage; 30 | 31 | CIContext *context = [CIContext contextWithOptions:nil]; 32 | 33 | CGImageRef outImage = [context createCGImage:outputImage fromRect:[inputImage extent]]; 34 | 35 | return [UIImage imageWithCGImage:outImage]; 36 | 37 | } 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UITableView/UITableView+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UITableView+Extension.h 3 | // KKTest 4 | // 5 | // Created by RY on 17/6/25. 6 | // Copyright © 2017年 OuDa. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface UITableView (Extension) 12 | 13 | /// 隐藏多余线 14 | - (void)lineHide; 15 | 16 | /// 下划线沾满行 17 | - (void)lineAll; 18 | 19 | /// 下划线左右有间隔 20 | - (void)linePadding; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIView/UIView+BlockGesture.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+UIView_BlockGesture.h 3 | // iOS-Categories (https://github.com/shaojiankui/iOS-Categories) 4 | // 5 | // Created by Jakey on 14/12/30. 6 | // Copyright (c) 2014年 www.skyfox.org. All rights reserved. 7 | // 8 | 9 | #import 10 | typedef void (^GestureActionBlock)(UIGestureRecognizer *gestureRecoginzer); 11 | 12 | @interface UIView (BlockGesture) 13 | /** 14 | * @brief 添加tap手势 15 | * 16 | * @param block 代码块 17 | */ 18 | - (void)addTapActionWithBlock:(GestureActionBlock)block; 19 | /** 20 | * @brief 添加长按手势 21 | * 22 | * @param block 代码块 23 | */ 24 | - (void)addLongPressActionWithBlock:(GestureActionBlock)block; 25 | @end 26 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Categorys/UIView/UIView+BorderLine.h: -------------------------------------------------------------------------------- 1 | /// .h内容 2 | #import 3 | 4 | typedef NS_OPTIONS(NSUInteger, UIBorderSideType) { 5 | UIBorderSideTypeAll = 0, 6 | UIBorderSideTypeTop = 1 << 0, 7 | UIBorderSideTypeBottom = 1 << 1, 8 | UIBorderSideTypeLeft = 1 << 2, 9 | UIBorderSideTypeRight = 1 << 3, 10 | }; 11 | 12 | @interface UIView (BorderLine) 13 | 14 | - (UIView *)borderForColor:(UIColor *)color borderWidth:(CGFloat)borderWidth borderType:(UIBorderSideType)borderType; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Detail/Controller/DetailController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DetailController.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseViewController.h" 10 | #import "DetailCard.h" 11 | #import "SongModel.h" 12 | 13 | @interface DetailController : BaseViewController 14 | 15 | @property (nonatomic, strong) DetailCard *contentV; 16 | @property (nonatomic, strong) SongModel *model; 17 | 18 | - (void)show; 19 | - (void)hide; 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Detail/View/DetailCard.h: -------------------------------------------------------------------------------- 1 | // 2 | // DetailCard.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | #import "SongModel.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface DetailCard : BaseView 15 | 16 | @property (weak, nonatomic) IBOutlet UIView *maskView; 17 | @property (weak, nonatomic) IBOutlet UIScrollView *scroll; 18 | 19 | @property (weak, nonatomic) IBOutlet UIView *scrollContentView; 20 | @property (weak, nonatomic) IBOutlet UIImageView *iconImg; 21 | @property (weak, nonatomic) IBOutlet UILabel *nameLab; 22 | @property (weak, nonatomic) IBOutlet UILabel *detailLab; 23 | @property (weak, nonatomic) IBOutlet UILabel *contentDescLab; 24 | @property (weak, nonatomic) IBOutlet UILabel *contentLab; 25 | 26 | @property (nonatomic, strong) SongModel *model; 27 | 28 | - (void)show; 29 | - (void)hide; 30 | 31 | @end 32 | 33 | NS_ASSUME_NONNULL_END 34 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Controller/HomeController.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeController.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseViewController.h" 10 | #import "HomeCollectionCell.h" 11 | #import "HomeTitle.h" 12 | #import "HomeCollection.h" 13 | #import "PupularModel.h" 14 | 15 | @interface HomeController : BaseViewController 16 | 17 | @property (nonatomic, strong) HomeCollectionCell *selectCell; // 当前选中Cell 18 | @property (nonatomic, strong) HomeTitle *header; // 头视图 19 | @property (nonatomic, strong) HomeCollection *collection; // 列表 20 | @property (nonatomic, strong) HomePupularListModel *model; // 数据 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Model/HomeRecommendModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeRecommendModel.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseModel.h" 10 | 11 | @interface HomeRecommendModel : BaseModel 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Model/HomeRecommendModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // HomeRecommendModel.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "HomeRecommendModel.h" 10 | 11 | @implementation HomeRecommendModel 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Model/PupularModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // SongModel.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseModel.h" 10 | #import "SongModel.h" 11 | 12 | // 歌曲列表 13 | @interface HomePupularListModel : BaseModel 14 | 15 | // 歌曲列表 16 | @property (nonatomic, strong) NSMutableArray *song; 17 | // 受欢迎歌曲 18 | @property (nonatomic, strong) NSString *popular_count; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Model/PupularModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // SongModel.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "PupularModel.h" 10 | 11 | 12 | @implementation HomePupularListModel 13 | + (void)load { 14 | [HomePupularListModel mj_setupObjectClassInArray:^NSDictionary *{ 15 | return @{ 16 | @"song": @"SongModel" 17 | }; 18 | }]; 19 | } 20 | @end 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Model/SongModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // SongModel.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/10/1. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseModel.h" 10 | 11 | // 歌曲 12 | @interface SongModel : BaseModel 13 | 14 | @property (nonatomic, strong) NSString *ID; 15 | @property (nonatomic, strong) NSString *name; 16 | @property (nonatomic, strong) NSString *author; 17 | @property (nonatomic, strong) NSString *big_img; 18 | @property (nonatomic, strong) NSString *small_img; 19 | @property (nonatomic, strong) NSString *introduction; 20 | @property (nonatomic, strong) NSString *detail; 21 | @property (nonatomic, strong) NSString *likeNumber; 22 | @property (nonatomic, strong) NSString *listenNumber; 23 | @property (nonatomic, strong) NSString *shareNumber; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Model/SongModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // SongModel.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/10/1. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "PupularModel.h" 10 | 11 | @implementation SongModel 12 | + (void)load { 13 | [SongModel mj_setupReplacedKeyFromPropertyName:^NSDictionary *{ 14 | return @{ 15 | @"ID": @"id" 16 | }; 17 | }]; 18 | } 19 | @end 20 | 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Transition/HomeDetailTransition.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeDetailTransition.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | #pragma mark - enum 14 | typedef NS_ENUM(NSUInteger, HomeDetailTransitionType) { 15 | HomeDetailTransitionTypePush = 0, 16 | HomeDetailTransitionTypePop 17 | }; 18 | 19 | #pragma mark - 声明 20 | @interface HomeDetailTransition : NSObject 21 | 22 | + (instancetype)transitionWithTransitionType:(HomeDetailTransitionType)type; 23 | - (instancetype)initWithTransitionType:(HomeDetailTransitionType)type; 24 | 25 | @end 26 | 27 | NS_ASSUME_NONNULL_END 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/Transition/HomeMusicTransition.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeMusicTransition.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | #pragma mark - enum 14 | typedef NS_ENUM(NSUInteger, HomeMusicTransitionType) { 15 | HomeMusicTransitionPush = 0, 16 | HomeMusicTransitionPop 17 | }; 18 | 19 | #pragma mark - 声明 20 | @interface HomeMusicTransition : NSObject 21 | 22 | + (instancetype)transitionWithTransitionType:(HomeMusicTransitionType)type; 23 | - (instancetype)initWithTransitionType:(HomeMusicTransitionType)type; 24 | 25 | @end 26 | 27 | NS_ASSUME_NONNULL_END 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/control/HomeConfig.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeConfig.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface HomeConfig : NSObject 12 | 13 | @property (nonatomic, strong) NSArray *titles; 14 | @property (nonatomic, strong) NSArray *views; 15 | 16 | + (HomeConfig *)shareConfig; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/control/HomeConfig.m: -------------------------------------------------------------------------------- 1 | // 2 | // HomeConfig.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "HomeConfig.h" 10 | 11 | @implementation HomeConfig 12 | 13 | + (HomeConfig *)shareConfig { 14 | HomeConfig *config = [[HomeConfig alloc] init]; 15 | return config; 16 | } 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/control/HomeContent.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeContent.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | #import "HomeConfig.h" 11 | 12 | 13 | #pragma mark - 代理 14 | @class HomeContent; 15 | @protocol HomeContentDelegate 16 | @optional 17 | - (void)homeContent:(HomeContent *)content progress:(CGFloat)progress originalIndex:(NSInteger)originalIndex targetIndex:(NSInteger)targetIndex; 18 | 19 | @end 20 | 21 | 22 | #pragma mark - 声明 23 | @interface HomeContent : BaseView 24 | 25 | @property (nonatomic, strong) HomeConfig *config; 26 | @property (nonatomic, weak ) id delegate; 27 | 28 | // 滚动到某一个View 29 | - (void)scrollWithIndex:(NSInteger)index; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/control/HomeTitle.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeTitle.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | #import "HomeConfig.h" 11 | 12 | #pragma mark - 代理 13 | @class HomeTitle; 14 | @protocol HomeTitleDelegate 15 | @optional 16 | - (void)homeTitle:(HomeTitle *)content selectedIndex:(NSInteger)selectedIndex; 17 | 18 | @end 19 | 20 | 21 | #pragma mark - 声明 22 | @interface HomeTitle : BaseView 23 | 24 | @property (nonatomic, strong) HomeConfig *config; 25 | @property (nonatomic, weak ) id delegate; 26 | @property (nonatomic, assign) NSInteger selectIndex; 27 | 28 | - (void)setProgress:(CGFloat)progress originalIndex:(NSInteger)originalIndex targetIndex:(NSInteger)targetIndex; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/popular/HomeCollection.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeCollection.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/26. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "HomeCollectionCell.h" 11 | #import "PupularModel.h" 12 | 13 | #pragma mark - 代理 14 | @class HomeCollection; 15 | @protocol HomeCollectionDelegate 16 | 17 | @optional 18 | - (void)homeCollection:(HomeCollection *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath cell:(HomeCollectionCell *)cell; 19 | 20 | @end 21 | 22 | 23 | #pragma mark - 声明 24 | @interface HomeCollection : BaseView 25 | 26 | @property (nonatomic, weak ) id delegate; 27 | @property (nonatomic, strong) UILabel *nameLab; 28 | @property (nonatomic, strong) HomePupularListModel *model; 29 | 30 | + (instancetype)initWithFrame:(CGRect)frame; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/popular/HomeCollectionCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeCollectionCell.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/26. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseCollectionCell.h" 10 | #import "PupularModel.h" 11 | 12 | @interface HomeCollectionCell : BaseCollectionCell 13 | 14 | @property (weak, nonatomic) IBOutlet UIView *content; 15 | @property (weak, nonatomic) IBOutlet UIImageView *icon; 16 | @property (weak, nonatomic) IBOutlet UILabel *nameLab; 17 | @property (weak, nonatomic) IBOutlet UILabel *detailLab; 18 | @property (weak, nonatomic) IBOutlet UIButton *playBtn; 19 | 20 | @property (nonatomic, strong) SongModel *model; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Home/Home/View/popular/HomeCollectionLayout.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeCollectionLayout.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/26. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface HomeCollectionLayout : UICollectionViewFlowLayout 12 | 13 | - (instancetype)init; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Mine/About/Controller/AboutController.h: -------------------------------------------------------------------------------- 1 | // 2 | // AboutController.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseViewController.h" 10 | 11 | @interface AboutController : BaseViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Mine/Mine/Controller/MineController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MineController.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseViewController.h" 10 | 11 | @interface MineController : BaseViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Mine/Mine/View/MineCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // MineCell.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseTableCell.h" 10 | 11 | #pragma mark - NS_ENUM 12 | typedef NS_ENUM(NSUInteger, MineCellStatus) { 13 | MineCellStatusSwitch, 14 | MineCellStatusNext, 15 | }; 16 | 17 | #pragma mark - 声明 18 | @interface MineCell : BaseTableCell 19 | 20 | @property (nonatomic, assign) MineCellStatus status; 21 | @property (nonatomic, strong) NSIndexPath *index; 22 | @property (weak, nonatomic) IBOutlet UISwitch *sw; 23 | @property (weak, nonatomic) IBOutlet UILabel *name; 24 | 25 | @end 26 | 27 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/Controller/MusicController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicController.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseViewController.h" 10 | #import "MusicNavigation.h" 11 | #import "MusicCD.h" 12 | #import "MusicBottom.h" 13 | #import "MusicLyric.h" 14 | #import "SongModel.h" 15 | 16 | NS_ASSUME_NONNULL_BEGIN 17 | 18 | @interface MusicController : BaseViewController 19 | 20 | @property (nonatomic, strong) MusicNavigation *navigation; 21 | @property (nonatomic, strong) MusicCD *cd; 22 | @property (nonatomic, strong) MusicLyric *lyric; 23 | @property (nonatomic, strong) MusicBottom *bottom; 24 | 25 | @property (nonatomic, strong) SongModel *model; 26 | 27 | - (void)show; 28 | - (void)hide; 29 | 30 | // 显示CD/歌词 31 | - (void)showCD:(BOOL)isShowCD 32 | duation:(NSTimeInterval)duration 33 | completion:(void (^ __nullable)(BOOL finished))completion; 34 | 35 | @end 36 | 37 | NS_ASSUME_NONNULL_END 38 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/Model/ResourceModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // ResourceModel.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/9/13. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseModel.h" 10 | 11 | @interface ResourceModel : BaseModel 12 | 13 | // 歌曲id 14 | @property (nonatomic, copy ) NSString *song_id; 15 | // 歌词 16 | @property (nonatomic, copy ) NSString *lrc; 17 | // 音乐 18 | @property (nonatomic, copy ) NSString *mp3; 19 | // 数据 20 | @property (nonatomic, strong) NSArray *datas; 21 | // 歌词 22 | @property (nonatomic, strong) NSMutableArray *lrcs; 23 | // 时间 24 | @property (nonatomic, strong) NSMutableArray *times; 25 | // 秒数 26 | @property (nonatomic, strong) NSMutableArray *seconds; 27 | 28 | /// 获取行数 通过 秒数 29 | - (NSInteger)getLineWithSecond:(NSTimeInterval)second; 30 | /// 获取时间字符串 通过 行数 31 | - (NSString *)getTimeWithLine:(NSInteger)line; 32 | /// 获取时间字符串 通过 秒数 33 | - (NSString *)getTimeWithSecond:(NSTimeInterval)sec; 34 | /// 获取秒数 通过 行数 35 | - (NSTimeInterval)getSecondWithLine:(NSInteger)line; 36 | 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/Tool/MusicModulesConst.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicModulesConst.h 3 | // imiss-ios-master 4 | // 5 | // Created by MAC on 2018/8/4. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | 10 | // 播放 11 | extern NSString *const MusicModulesConstPlay; 12 | // 暂停 13 | extern NSString *const MusicModulesConstPause; 14 | // 切换播放状态 15 | extern NSString *const MusicModulesConstStatusChange; 16 | // 重置 17 | extern NSString *const MusicModulesConstReset; 18 | // 进度变化 19 | extern NSString *const MusicModulesConstProgress; 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/Tool/MusicModulesConst.m: -------------------------------------------------------------------------------- 1 | // 2 | // MusicModulesConst.m 3 | // imiss-ios-master 4 | // 5 | // Created by MAC on 2018/8/4. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | // 播放 10 | NSString *const MusicModulesConstPlay = @"MusicModulesConstPlay"; 11 | // 暂停 12 | NSString *const MusicModulesConstPause = @"MusicModulesConstPause"; 13 | // 切换播放状态 14 | NSString *const MusicModulesConstStatusChange = @"MusicModulesConstStatusChange"; 15 | // 重置 16 | NSString *const MusicModulesConstReset = @"MusicModulesConstReset"; 17 | // 进度 18 | NSString *const MusicModulesConstProgress = @"MusicModulesConstProgress"; 19 | 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/bottom/MusicBottom.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicBottom.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | #import "MusicModules.h" 11 | #import "ResourceModel.h" 12 | 13 | NS_ASSUME_NONNULL_BEGIN 14 | 15 | @interface MusicBottom : BaseView 16 | 17 | @property (weak, nonatomic) IBOutlet UIButton *cycleBtn; // 循环 18 | @property (weak, nonatomic) IBOutlet UIButton *leftBtn; // 上一首 19 | @property (weak, nonatomic) IBOutlet UIButton *controlBtn; // 控制 20 | @property (weak, nonatomic) IBOutlet UIButton *rightBtn; // 下一首 21 | @property (weak, nonatomic) IBOutlet UIButton *randomBtn; // 随机 22 | @property (weak, nonatomic) IBOutlet UIButton *listBtn; // 列表 23 | @property (weak, nonatomic) IBOutlet UIImageView *controlImg; // 控制图片 24 | 25 | @property (nonatomic, strong) ResourceModel *model; // 数据 26 | 27 | // 播放中 28 | - (void)music:(MusicModules *)manager playing:(NSString *)music progress:(CGFloat)progress currentTime:(NSTimeInterval)currentTime totalTime:(NSTimeInterval)totalTime; 29 | 30 | @end 31 | 32 | NS_ASSUME_NONNULL_END 33 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/cd/MusicCD.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicCD.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | #import "PupularModel.h" 11 | 12 | @interface MusicCD : BaseView 13 | 14 | @property (nonatomic, strong) UIImageView *icon; 15 | @property (nonatomic, strong) UILabel *nameLab; 16 | @property (nonatomic, strong) UILabel *detailLab; 17 | 18 | @property (nonatomic, strong) SongModel *model; 19 | 20 | @end 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/lyric/MusicFlag.h: -------------------------------------------------------------------------------- 1 | /** 2 | * 滑动时显示滚动行时间 3 | * @author 郑业强 2018-09-21 4 | */ 5 | 6 | #import "BaseView.h" 7 | 8 | #pragma mark - typedef 9 | typedef void (^MusicFlagClick)(void); 10 | 11 | #pragma mark - 声明 12 | @interface MusicFlag : BaseView 13 | 14 | // 时间 15 | @property (weak, nonatomic) IBOutlet UILabel *time; 16 | // 点击 17 | @property (nonatomic, copy ) MusicFlagClick click; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/lyric/MusicLyric.h: -------------------------------------------------------------------------------- 1 | /** 2 | * 歌词 3 | * @author 郑业强 2018-09-21 4 | */ 5 | 6 | #import "BaseView.h" 7 | #import "ResourceModel.h" 8 | #import "MusicModules.h" 9 | #import "MusicFlag.h" 10 | 11 | #pragma mark - 声明 12 | @interface MusicLyric : BaseView 13 | 14 | // 数据 15 | @property (nonatomic, strong) ResourceModel *model; 16 | // 标识 17 | @property (nonatomic, strong) MusicFlag *flag; 18 | 19 | // 获取当前行数 20 | - (NSInteger)getIndex; 21 | // 播放中 22 | - (void)music:(MusicModules *)manager playing:(NSString *)music progress:(CGFloat)progress currentTime:(NSTimeInterval)currentTime totalTime:(NSTimeInterval)totalTime; 23 | 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/lyric/MusicLyricCell.h: -------------------------------------------------------------------------------- 1 | /** 2 | * 歌词Cell 3 | * @author 郑业强 2018-09-21 4 | */ 5 | 6 | #import "BaseTableCell.h" 7 | 8 | @interface MusicLyricCell : BaseTableCell 9 | 10 | // 是否选中 11 | @property (nonatomic, assign, getter=isChoose) BOOL choose; 12 | // 歌词 13 | @property (nonatomic, copy ) NSString *lrc; 14 | 15 | // 是否选中 16 | - (void)choose:(BOOL)choose alpha:(CGFloat)alpha animation:(BOOL)animation; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/lyric/MusicVoice.h: -------------------------------------------------------------------------------- 1 | /** 2 | * 音量 3 | * @author 郑业强 2018-09-21 4 | */ 5 | 6 | #import "BaseView.h" 7 | 8 | @interface MusicVoice : BaseView 9 | 10 | @end 11 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/lyric/MusicVoice.m: -------------------------------------------------------------------------------- 1 | // 2 | // MusicVoice.m 3 | // imiss 4 | // 5 | // Created by MAC on 2018/9/21. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "MusicVoice.h" 10 | 11 | #pragma mark - 声明 12 | @interface MusicVoice () 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation MusicVoice 18 | 19 | - (void)initUI { 20 | 21 | } 22 | 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/lyric/MusicVoice.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/navigation/MusicNavigation.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicNavigation.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | @interface MusicNavigation : BaseView 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Music/Music/View/navigation/MusicNavigation.m: -------------------------------------------------------------------------------- 1 | // 2 | // MusicNavigation.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/28. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "MusicNavigation.h" 10 | #import "MusicController.h" 11 | 12 | #pragma mark - 声明 13 | @interface MusicNavigation() 14 | 15 | @property (weak, nonatomic) IBOutlet UIView *backBtn; 16 | @property (weak, nonatomic) IBOutlet UIView *listBtn; 17 | 18 | @end 19 | 20 | #pragma mark - 实现 21 | @implementation MusicNavigation 22 | 23 | - (void)initUI { 24 | self.allowNight = YES; 25 | } 26 | - (IBAction)leftTap:(UITapGestureRecognizer *)sender { 27 | MusicController *vc = (MusicController *)self.viewController; 28 | [vc showCD:YES duation:0.2f completion:^(BOOL finished) { 29 | [self.viewController.navigationController popViewControllerAnimated:YES]; 30 | }]; 31 | 32 | } 33 | - (IBAction)rightTap:(UITapGestureRecognizer *)sender { 34 | 35 | } 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/Controller/SheetController.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetController.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/25. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseViewController.h" 10 | #import "SheetTableCell.h" 11 | 12 | @interface SheetController : BaseViewController 13 | 14 | @property (nonatomic, strong) SheetTableCell *selectCell; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/Model/SheetModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetModel.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/10/1. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseModel.h" 10 | 11 | @interface SheetModel : BaseModel 12 | 13 | @property (nonatomic, strong) NSString *ID; 14 | @property (nonatomic, strong) NSString *img; 15 | @property (nonatomic, strong) NSString *name; 16 | 17 | /** 18 | id = 1; 19 | img = "music/d210008636.png"; 20 | name = "\U5348\U540e\U6c11\U8c23"; 21 | */ 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/Model/SheetModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // SheetModel.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/10/1. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "SheetModel.h" 10 | 11 | @implementation SheetModel 12 | 13 | + (void)load { 14 | [SheetModel mj_setupReplacedKeyFromPropertyName:^NSDictionary *{ 15 | return @{ 16 | @"ID": @"id" 17 | }; 18 | }]; 19 | } 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/Transition/SheetMusicTransition.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetMusicTransition.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/10/4. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - enum 12 | typedef NS_ENUM(NSUInteger, SheetMusicTransitionType) { 13 | SheetMusicTransitionTypePush = 0, 14 | SheetMusicTransitionTypePop 15 | }; 16 | 17 | #pragma mark - 声明 18 | @interface SheetMusicTransition : NSObject 19 | 20 | + (instancetype)transitionWithTransitionType:(SheetMusicTransitionType)type; 21 | - (instancetype)initWithTransitionType:(SheetMusicTransitionType)type; 22 | 23 | @end 24 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/View/Collection/SheetCollection.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetCollection.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | #import "SheetModel.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | #pragma mark - 代理 15 | @class SheetCollection; 16 | @protocol SheetCollectionDelegate 17 | @optional 18 | // 点击/滑动到某个Item 19 | - (void)sheetCollection:(SheetCollection *)collection didSelectOrSwipeItemAtIndex:(NSInteger)index click:(BOOL)isClick; 20 | 21 | @end 22 | 23 | #pragma mark - 声明 24 | @interface SheetCollection : BaseCollectionView 25 | 26 | @property (nonatomic, weak ) id sheetDelegate; 27 | @property (nonatomic, strong) NSMutableArray *models; 28 | 29 | + (instancetype)initWithFrame:(CGRect)frame; 30 | 31 | @end 32 | 33 | NS_ASSUME_NONNULL_END 34 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/View/Collection/SheetCollectionCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetCollectionCell.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseCollectionCell.h" 10 | #import "SheetModel.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SheetCollectionCell : BaseCollectionCell 15 | 16 | @property (weak, nonatomic) IBOutlet UIImageView *icon; 17 | @property (weak, nonatomic) IBOutlet UIImageView *cd; 18 | @property (weak, nonatomic) IBOutlet NSLayoutConstraint *cdConstraintL; 19 | @property (nonatomic, strong) NSIndexPath *indexPath; 20 | @property (nonatomic, strong) SheetModel *model; 21 | 22 | - (void)show:(BOOL)animation; 23 | - (void)hide:(BOOL)animation; 24 | 25 | @end 26 | 27 | NS_ASSUME_NONNULL_END 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/View/Collection/SheetCollectionLayout.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetCollectionLayout.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SheetCollection.h" 11 | 12 | #pragma mark - 代理 13 | @class SheetCollectionLayout; 14 | @protocol SheetCollectionLayoutDelegate 15 | @optional 16 | - (void)collectionLayout:(SheetCollectionLayout *)layout didSelectItemWithIndex:(NSInteger)index; 17 | 18 | @end 19 | 20 | #pragma mark - 声明 21 | @interface SheetCollectionLayout : UICollectionViewFlowLayout 22 | 23 | @property (nonatomic, weak ) id delegate; 24 | @property (nonatomic, strong) SheetCollection *collection; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/View/Table/SheetTable.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetTable.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | #pragma mark - 代理 14 | @class SheetTable; 15 | @protocol SheetTableDelegate 16 | @optional 17 | - (void)sheetTable:(SheetTable *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath; 18 | 19 | @end 20 | 21 | 22 | #pragma mark - 声明 23 | @interface SheetTable : UITableView 24 | 25 | @property (nonatomic, strong) NSMutableArray *models; 26 | @property (nonatomic, weak ) id sheetDelegate; 27 | 28 | + (instancetype)initWithFrame:(CGRect)frame; 29 | 30 | @end 31 | 32 | NS_ASSUME_NONNULL_END 33 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Modules/Sheet/View/Table/SheetTableCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetTableCell.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseTableCell.h" 10 | #import "SongModel.h" 11 | 12 | NS_ASSUME_NONNULL_BEGIN 13 | 14 | @interface SheetTableCell : BaseTableCell 15 | 16 | @property (weak, nonatomic) IBOutlet UIImageView *icon; 17 | @property (weak, nonatomic) IBOutlet UILabel *name; 18 | @property (weak, nonatomic) IBOutlet UILabel *detail; 19 | 20 | @property (nonatomic, strong) SongModel *model; 21 | 22 | @end 23 | 24 | NS_ASSUME_NONNULL_END 25 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/AFNManager.h: -------------------------------------------------------------------------------- 1 | // 2 | // AFNManager.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/18. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - typeof 12 | typedef void(^ServiceCompleteBlock)(APPResult *result); 13 | typedef void(^ProgressNetWorkBlock)(CGFloat currentProgress, CGFloat maxProgress, CGFloat percentage); 14 | 15 | #pragma mark - 声明 16 | @interface AFNManager : NSObject 17 | 18 | + (void)GET:(NSString *)url params:(NSDictionary *)params complete:(ServiceCompleteBlock)complete; 19 | + (void)GET:(NSString *)url params:(NSDictionary *)params progress:(ProgressNetWorkBlock)progress complete:(ServiceCompleteBlock)complete; 20 | 21 | + (void)POST:(NSString *)url params:(NSDictionary *)params complete:(ServiceCompleteBlock)complete; 22 | + (void)POST:(NSString *)url params:(NSDictionary *)params progress:(ProgressNetWorkBlock)progress complete:(ServiceCompleteBlock)complete; 23 | 24 | + (void)POST:(NSString *)url params:(NSDictionary *)params andImages:(NSArray *)images progress:(ProgressNetWorkBlock)progress complete:(ServiceCompleteBlock)complete; 25 | 26 | @end 27 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/APPResult.h: -------------------------------------------------------------------------------- 1 | // 2 | // APPResult.h 3 | // coding-ios-master 4 | // 5 | // Created by MAC on 2018/5/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - typeof 12 | typedef NS_ENUM(NSInteger, ServiceType) { 13 | ServiceTypeNetwork = 0, // 请求 14 | ServiceTypeOffline = 1, // 离线 15 | }; 16 | 17 | typedef NS_ENUM(NSInteger, ServiceStatus) { 18 | ServiceStatusSuccess = 200, // 成功 19 | ServiceStatusFail = 1001, // 失败 20 | }; 21 | 22 | @interface APPResult : NSObject 23 | 24 | @property (nonatomic, assign) ServiceType result; // 错误码 25 | @property (nonatomic, assign) ServiceStatus status; // 样式 26 | @property (nonatomic, strong) id data; // 数据 27 | @property (nonatomic, strong) id message; // 描述 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/APPResult.m: -------------------------------------------------------------------------------- 1 | // 2 | // APPResult.m 3 | // coding-ios-master 4 | // 5 | // Created by MAC on 2018/5/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "APPResult.h" 10 | 11 | @implementation APPResult 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/AppProgressView.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppProgressView.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface AppProgressView : UIView 14 | 15 | @property (nonatomic, assign) CGFloat progress; 16 | 17 | + (instancetype)init; 18 | 19 | @end 20 | 21 | NS_ASSUME_NONNULL_END 22 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/AppProgressView.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppProgressView.m 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "AppProgressView.h" 10 | 11 | #pragma mark - 声明 12 | @interface AppProgressView() 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation AppProgressView 18 | 19 | + (instancetype)init { 20 | AppProgressView *view = [[AppProgressView alloc] init]; 21 | [view setBackgroundColor:[UIColor redColor]]; 22 | return view; 23 | } 24 | - (void)setProgress:(CGFloat)progress { 25 | _progress = progress; 26 | NSTimeInterval time = ABS(self.width - progress * SCREEN_WIDTH) / 300.f; 27 | [UIView animateWithDuration:time delay:0 options:UIViewAnimationOptionCurveEaseInOut animations:^{ 28 | self.width = SCREEN_WIDTH * progress; 29 | } completion:^(BOOL finished) { 30 | 31 | }]; 32 | } 33 | 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/NSString+API.h: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+API.h 3 | // coding-ios-master 4 | // 5 | // Created by MAC on 2018/4/21. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | 12 | #define KHost @"http://127.0.0.1:8080" 13 | #define KStatic(str) [NSString stringWithFormat:@"http://127.0.0.1:8080/media/%@", str] 14 | #define Request(A) [NSString create_request:A] 15 | 16 | 17 | // 受欢迎歌曲 18 | #define CreatePopularRequest Request(@"/music/getPopularRequest.action") 19 | // 资源 20 | #define CreateResourceRequest Request(@"/music/getResourceRequest.action") 21 | // 歌单列表 22 | #define CreateSheetRequest Request(@"/music/getSheetRequest.action") 23 | // 歌单列表 24 | #define CreateSongWithSheetRequest Request(@"/music/getSongsWithSheetRequest.action") 25 | 26 | 27 | @interface NSString (API) 28 | 29 | /// host + 请求 30 | + (NSString *)create_request:(NSString *)string; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/NetWork/NSString+API.m: -------------------------------------------------------------------------------- 1 | // 2 | // NSString+API.m 3 | // coding-ios-master 4 | // 5 | // Created by MAC on 2018/4/21. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "NSString+API.h" 10 | 11 | 12 | // 获取验证码 13 | #define CreateRegisterCodeRequest @"/user/createRegisterCode.action" 14 | @implementation NSString (API) 15 | 16 | /// host + 请求 17 | + (NSString *)create_request:(NSString *)string { 18 | return [NSString stringWithFormat:@"%@%@", KHost, string]; 19 | } 20 | 21 | @end 22 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/cm2_act_icn_arr.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/cm2_act_icn_arr.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_close.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_icn1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_icn1.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_like_normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_like_normal.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_like_select.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_like_select.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_pause.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_pause.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_play.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_play.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/home_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/home_share.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/like_icn_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/like_icn_small.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/list_icn_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/list_icn_small.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/mine_share_link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/mine_share_link.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/mine_share_qq.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/mine_share_qq.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/mine_share_wb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/mine_share_wb.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/mine_share_wc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/mine_share_wc.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/mine_share_wzone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/mine_share_wzone.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/mine_share_zone.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/mine_share_zone.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_back.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_cycle.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_cycle.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_down.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_down.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_forward.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_forward.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_icn_small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_icn_small.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_list.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_list.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_menu.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_menu.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/music_random.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/music_random.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Resources/share_close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Resources/share_close.png -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/KMTagListView/KMTag.h: -------------------------------------------------------------------------------- 1 | // 2 | // KMTag.h 3 | // KMTag 4 | // 5 | // Created by chavez on 2017/7/13. 6 | // Copyright © 2017年 chavez. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface KMTag : UILabel 12 | 13 | - (void)setupWithText:(NSString*)text; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/KMTagListView/KMTagListView.h: -------------------------------------------------------------------------------- 1 | // 2 | // KMTagListView.h 3 | // KMTag 4 | // 5 | // Created by chavez on 2017/7/13. 6 | // Copyright © 2017年 chavez. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class KMTagListView; 12 | @protocol KMTagListViewDelegate 13 | 14 | - (void)ptl_TagListView:(KMTagListView*)tagListView didSelectTagViewAtIndex:(NSInteger)index selectContent:(NSString *)content; 15 | 16 | @end 17 | 18 | @interface KMTagListView : UIScrollView 19 | 20 | @property (nonatomic, weak)id delegate_; 21 | 22 | - (void)setupSubViewsWithTitles:(NSArray *)titles; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/RLMRealm+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // RLMRealm+Extension.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "UserModel.h" 11 | 12 | //#pragma mark - const 13 | //// 登录 14 | //UIKIT_EXTERN NSString *const RealmLogin; 15 | //// 退出 16 | //UIKIT_EXTERN NSString *const RealmLogOut; 17 | 18 | #pragma mark - 声明 19 | @interface RLMRealm (Extension) 20 | 21 | // GET 22 | + (RLMRealm *)getRealm; 23 | // 读取数据 24 | + (RLMResults *)loadModel:(Class )cls; 25 | // 保存数据 26 | + (void)saveModel:(__kindof RLMObject *)model; 27 | // 删除model 28 | + (void)removeModel:(Class)cls; 29 | 30 | //================================= 个人信息 =================================// 31 | // 保存个人信息 32 | + (void)saveUserInfo:(UserModel *)model; 33 | // 读取个人信息 34 | + (UserModel *)loadUserInfo; 35 | // 删除个人信息 36 | + (void)removeUserInfo; 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/HomeRealmModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // HomeRealmModel.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "SheetRealmModel.h" 11 | #import "SongRealmModel.h" 12 | 13 | // 轮播图 14 | @interface HomeCarouselRealmModel : RLMObject 15 | 16 | @property NSString *img; 17 | @property NSString *album_id; 18 | @property NSString *list_id; 19 | @property NSString *singer_id; 20 | 21 | @end 22 | 23 | RLM_ARRAY_TYPE(HomeCarouselRealmModel) 24 | 25 | // 数据 26 | @interface HomeRealmModel : RLMObject 27 | 28 | @property RLMArray *carousel; // 轮播图 29 | @property RLMArray *sheet; // 歌单 30 | @property RLMArray *song; // 歌曲 31 | 32 | @end 33 | 34 | RLM_ARRAY_TYPE(HomeRealmModel) 35 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/HomeRealmModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // HomeRealmModel.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "HomeRealmModel.h" 10 | 11 | @implementation HomeCarouselRealmModel 12 | 13 | @end 14 | 15 | @implementation HomeRealmModel 16 | 17 | - (NSDictionary *)classInArray { 18 | return @{ 19 | @"carousel": @"HomeCarouselRealmModel", 20 | @"sheet": @"SheetRealmModel", 21 | @"song": @"SongRealmModel" 22 | }; 23 | } 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/RLMObject+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // RLMObject+Extension.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/9/14. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface RLMObject (Extension) 12 | 13 | @property (nonatomic, strong) NSDictionary *classInArray; 14 | @property (nonatomic, strong) NSDictionary *replaceInArray; 15 | 16 | // 解析 17 | + (__kindof RLMObject *)kk_objectWithKeyValues:(NSDictionary *)param; 18 | 19 | // 模型转字典 20 | - (NSMutableDictionary *)kk_keyValues; 21 | // 模型数组 -> 字典数组 22 | - (NSMutableArray *)kk_keyValuesArrayWithObjectArray:(NSArray *)objectArray; 23 | 24 | // 字典转模型 25 | - (RLMObject *)kk_objectWithKeyValues:(NSDictionary *)param; 26 | 27 | @end 28 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/SheetRealmModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // SheetRealmModel.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SheetRealmModel : RLMObject 12 | 13 | @property NSString *ID; 14 | @property NSString *img; 15 | @property NSString *name; 16 | @property NSString *small_img; 17 | 18 | @end 19 | 20 | RLM_ARRAY_TYPE(SheetRealmModel) 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/SheetRealmModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // SheetRealmModel.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "SheetRealmModel.h" 10 | 11 | @implementation SheetRealmModel 12 | 13 | - (NSDictionary *)replaceInArray { 14 | return @{ 15 | @"id": @"ID" 16 | }; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/SongRealmModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // SongRealmModel.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SongRealmModel : RLMObject 12 | 13 | @property NSString *ID; 14 | @property NSString *album_id; 15 | @property NSString *img; 16 | @property BOOL isRecommend; 17 | @property NSString *list_id; 18 | @property NSString *name; 19 | @property NSString *singer_id; 20 | @property NSString *small_img; 21 | 22 | @end 23 | 24 | RLM_ARRAY_TYPE(SongRealmModel) 25 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/SongRealmModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // SongRealmModel.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/15. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "SongRealmModel.h" 10 | 11 | @implementation SongRealmModel 12 | 13 | - (NSDictionary *)replaceInArray { 14 | return @{ 15 | @"id": @"ID" 16 | }; 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/UserModel.h: -------------------------------------------------------------------------------- 1 | // 2 | // UserModel.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | RLM_ARRAY_TYPE(UserModel); 12 | @interface UserModel : RLMObject 13 | 14 | @property BOOL lockLyrics; // 锁屏歌词 15 | @property BOOL nightMode; // 夜间模式 16 | @property BOOL screenShare; // 截屏后分享 17 | 18 | @end 19 | 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/Realm/model/UserModel.m: -------------------------------------------------------------------------------- 1 | // 2 | // UserModel.m 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "UserModel.h" 10 | 11 | @implementation UserModel 12 | 13 | //// 主键 14 | //+ (NSString *)primaryKey { 15 | // return @"num"; 16 | //} 17 | // 18 | //// 需要添加索引的属性 19 | //+ (NSArray *)indexedProperties { 20 | // return @[@"title"]; 21 | //} 22 | // 23 | //// 默认属性值 24 | //+ (NSDictionary *)defaultPropertyValues { 25 | // return @{@"author": @"zengjing"}; 26 | //} 27 | // 28 | //// 忽略的字段 29 | //+ (NSArray *)ignoredProperties { 30 | // return @[@"weight"]; 31 | //} 32 | 33 | //+ (void)ads { 34 | // UserModel *article = [[UserModel alloc] init]; 35 | // article.name = @"1"; 36 | // article.password = @"iOS开发中集成Reveal"; 37 | // article.token = @"http://blog.devzeng.com/blog/ios-reveal-integrating.html"; 38 | // 39 | // RLMRealm *realm = [RLMRealm defaultRealm]; 40 | // [realm beginWriteTransaction]; 41 | // [realm addObject:article]; 42 | // [realm commitWriteTransaction]; 43 | //} 44 | 45 | @end 46 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/SGAdvertScrollView/LinkageView/LinkageConfig.m: -------------------------------------------------------------------------------- 1 | // 2 | // LinkageConfig.m 3 | // ZhongLv 4 | // 5 | // Created by MAC on 2018/4/27. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "LinkageConfig.h" 10 | 11 | @implementation LinkageConfig 12 | 13 | /// 项目默认设置 14 | + (instancetype)initWithDefaultStyle { 15 | LinkageConfig *config = [[LinkageConfig alloc] init]; 16 | config.titleFrame = CGRectMake(0, 0, SCREEN_WIDTH, 50); 17 | config.contentFrame = CGRectMake(0, 50, SCREEN_WIDTH, SCREEN_HEIGHT - NavigationBarHeight - 50 - countcoordinatesX(100) - SafeAreaBottomHeight); 18 | config.titleSelectedFont = [UIFont systemFontOfSize:AdjustFont(14) weight:UIFontWeightBold]; 19 | config.titleFont = [UIFont systemFontOfSize:AdjustFont(14) weight:UIFontWeightLight]; 20 | config.titleSelectedColor = kColor_White; 21 | config.titleColor = [kColor_White colorWithAlphaComponent:0.8]; 22 | config.indicatorColor = MainColor; 23 | config.indicatorFixedWidth = 0; 24 | config.indicatorAdditionalWidth = 0; 25 | config.bottomSeparatorColor = kColor_BG; 26 | return config; 27 | } 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/SGAdvertScrollView/LinkageView/LinkageView.h: -------------------------------------------------------------------------------- 1 | /** 2 | * 上下联动控件封装 3 | * @author 郑业强 2018-04-27 15:38 4 | * @update -- 5 | */ 6 | 7 | #import "BaseView.h" 8 | #import "LinkageConfig.h" 9 | 10 | #pragma mark - 代理 11 | @protocol LinkageViewDelegate 12 | 13 | @optional 14 | - (void)hookPageTitleView:(SGPageTitleView *)pageTitleView selectedIndex:(NSInteger)selectedIndex; 15 | - (void)hookPageContentView:(SGPageContentView *)pageContentView progress:(CGFloat)progress originalIndex:(NSInteger)originalIndex targetIndex:(NSInteger)targetIndex; 16 | 17 | @end 18 | 19 | 20 | #pragma mark - 声明 21 | @interface LinkageView : BaseView 22 | 23 | /// 配置信息 24 | @property (nonatomic, strong) LinkageConfig *config; 25 | /// 代理 26 | @property (nonatomic, weak ) id delegate; 27 | /// 当前选中 28 | @property (nonatomic, assign) NSInteger selectedIndex; 29 | 30 | /// 初始化 31 | + (instancetype)initWithFrame:(CGRect)frame; 32 | + (instancetype)initWithFrame:(CGRect)frame vc:(BaseViewController *)vc; 33 | 34 | @end 35 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/SGAdvertScrollView/SGPagingView/Category/UIView+SGPagingView.h: -------------------------------------------------------------------------------- 1 | // 2 | // 如遇到问题或有更好方案,请通过以下方式进行联系 3 | // QQ群:429899752 4 | // Email:kingsic@126.com 5 | // GitHub:https://github.com/kingsic/SGPagingView 6 | // 7 | // UIView+SGPagingView.h 8 | // UIView+SGPagingView 9 | // 10 | // Created by kingsic on 15/7/13. 11 | // Copyright © 2015年 kingsic. All rights reserved. 12 | // 13 | 14 | #import 15 | 16 | @interface UIView (SGPagingView) 17 | @property (nonatomic, assign) CGFloat SG_x; 18 | @property (nonatomic, assign) CGFloat SG_y; 19 | @property (nonatomic, assign) CGFloat SG_width; 20 | @property (nonatomic, assign) CGFloat SG_height; 21 | @property (nonatomic, assign) CGFloat SG_centerX; 22 | @property (nonatomic, assign) CGFloat SG_centerY; 23 | @property (nonatomic, assign) CGPoint SG_origin; 24 | @property (nonatomic, assign) CGSize SG_size; 25 | 26 | /// 从 XIB 中加载视图 27 | + (instancetype)SG_loadViewFromXib; 28 | 29 | @end 30 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/SGAdvertScrollView/SGPagingView/SGPagingView.h: -------------------------------------------------------------------------------- 1 | // 2 | // 如遇到问题或有更好方案,请通过以下方式进行联系 3 | // QQ群:429899752 4 | // Email:kingsic@126.com 5 | // GitHub:https://github.com/kingsic 6 | // 7 | // SGPagingView.h 8 | // Version 1.3.6 9 | // 10 | // Created by kingsic on 2016/10/6. 11 | // Copyright © 2016年 kingsic. All rights reserved. 12 | // 13 | 14 | #import "SGPageTitleViewConfigure.h" 15 | #import "SGPageTitleView.h" 16 | #import "SGPageContentView.h" 17 | #import "SGPageContentScrollView.h" 18 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/ThirdParty/UMShare/UMSocialManager+Extension.h: -------------------------------------------------------------------------------- 1 | // 2 | // UMSocialManager+Extension.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/16. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "KKShareContent.h" 11 | 12 | @interface UMSocialManager (Extension) 13 | 14 | + (void)shareImage:(UMSocialPlatformType)platformType controller:(UIViewController *)vc thumb:(id)thumb image:(id)image; 15 | 16 | + (void)shareUrl:(UMSocialPlatformType)platformType 17 | url:(NSString *)url 18 | title:(NSString *)title 19 | desc:(NSString *)desc 20 | thumbImage:(UIImage *)thumbImage 21 | success:(KKShareSuccessBlock)successBlock 22 | error:(KKShareErrorBlock)errorBlock; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/CountDown/CountDown.h: -------------------------------------------------------------------------------- 1 | // 2 | // CountDown.h 3 | // 倒计时 4 | // 5 | // Created by Maker on 16/7/5. 6 | // Copyright © 2016年 郑文明. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface CountDown : NSObject 13 | SingleInterface(CountDown) 14 | 15 | /// 用 NSDate 日期倒计时 16 | - (void)countDownWithStratDate:(NSDate *)startDate finishDate:(NSDate *)finishDate completeBlock:(void (^)(NSInteger day,NSInteger hour,NSInteger minute,NSInteger second))completeBlock; 17 | /// 用时间戳倒计时 18 | - (void)countDownWithStratTimeStamp:(long long)starTimeStamp finishTimeStamp:(long long)finishTimeStamp completeBlock:(void (^)(NSInteger day,NSInteger hour,NSInteger minute,NSInteger second))completeBlock; 19 | /// 每秒走一次,回调block 20 | - (void)countDownWithPER_SECBlock:(void (^)(void))PER_SECBlock; 21 | - (void)destoryTimer; 22 | - (NSDate *)dateWithLongLong:(long long)longlongValue; 23 | 24 | @end 25 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/EmptyView/EmptyView.h: -------------------------------------------------------------------------------- 1 | // 2 | // EmptyView.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/13. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - enum 12 | typedef NS_ENUM(NSInteger, EmptyState) { 13 | EmptyStateNetkFailIcon, // 网络请求 - 图 14 | EmptyStateNetkFailPullRefresh, // 网络请求 - 下拉刷新 15 | EmptyStateNetkFailButton, // 网络请求 - 按钮 16 | EmptyStatePlayRecordNone, // 无播放记录 17 | EmptyStateCollectionNone, // 无收藏歌曲 18 | EmptyStateLoading, // 正在加载 19 | }; 20 | typedef void (^EmptyViewEventBlock)(void); 21 | 22 | #pragma mark - 声明 23 | @interface EmptyView : UIView 24 | 25 | @property (nonatomic, assign) EmptyState state; // 样式 26 | @property (nonatomic, copy ) EmptyViewEventBlock event; // 点击 27 | 28 | - (void)show; 29 | - (void)hide; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/EmptyView/UIView+KKEmptyView.h: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+KKEmptyView.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface UIView (KKEmptyView) 14 | 15 | @end 16 | 17 | NS_ASSUME_NONNULL_END 18 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/EmptyView/UIView+KKEmptyView.m: -------------------------------------------------------------------------------- 1 | // 2 | // UIView+KKEmptyView.m 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "UIView+KKEmptyView.h" 10 | 11 | @implementation UIView (KKEmptyView) 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/FakeData.h: -------------------------------------------------------------------------------- 1 | // 2 | // FakeData.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/10/2. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FakeData : NSObject 12 | 13 | + (NSDictionary *)homeData; 14 | + (NSArray *)sheetData; 15 | + (NSArray *)songWithSheet; 16 | + (NSDictionary *)resourceData; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/big_img1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/big_img1.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/big_img2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/big_img2.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/big_img3.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/big_img3.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/big_img4.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/big_img4.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/small_img1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/small_img1.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/small_img2.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/small_img2.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/small_img3.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/small_img3.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/small_img4.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/small_img4.jpeg -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/FakeData/后来.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-ios-master/music/Classes/Utils/FakeData/后来.mp3 -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/GradientButton/GradientButton.h: -------------------------------------------------------------------------------- 1 | /** 2 | * 渐变的按钮 3 | */ 4 | 5 | #import 6 | 7 | @interface GradientButton : UIButton 8 | 9 | @end 10 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/KKHeader/KKHeaderView.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKHeaderView.h 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/27. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | @interface KKHeaderView : BaseView 12 | 13 | @property (nonatomic, strong) NSString *name; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/KKNavigationBar/KKNavigationBar.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKNavigationBar.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/31. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | #pragma mark - typedef 12 | typedef void (^KKNavigationBarLeftClick)(void); 13 | typedef void (^KKNavigationBarRightClick)(void); 14 | typedef NS_ENUM(NSUInteger, KKNavigationBarStatus) { 15 | KKNavigationBarStatusOne, // 一行 16 | KKNavigationBarStatusTwo, // 两行 17 | }; 18 | 19 | #pragma mark - 声明 20 | @interface KKNavigationBar : BaseView 21 | 22 | @property (nonatomic, strong) NSString *name; 23 | @property (nonatomic, strong) NSString *title; 24 | @property (nonatomic, strong) NSString *detail; 25 | @property (nonatomic, copy ) KKNavigationBarLeftClick leftClick; 26 | @property (nonatomic, copy ) KKNavigationBarRightClick rightClick; 27 | @property (nonatomic, assign) KKNavigationBarStatus status; 28 | 29 | @property (weak, nonatomic) IBOutlet UIButton *leftBtn; 30 | @property (weak, nonatomic) IBOutlet UIButton *rightBtn; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/MusicItem/MusicItem.h: -------------------------------------------------------------------------------- 1 | // 2 | // PlayItem.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "MusicItemConst.h" 11 | 12 | #pragma mark - typedef 13 | typedef void (^MusicItemClick)(void); 14 | 15 | #pragma mark - 声明 16 | @interface MusicItem : UIButton 17 | 18 | @property (nonatomic, copy ) MusicItemClick click; 19 | 20 | - (UIBarButtonItem *)getBarItem; 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/MusicItem/MusicItemConst.h: -------------------------------------------------------------------------------- 1 | // 2 | // MusicItemConst.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/1. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #pragma mark - const 12 | // 开始播放 13 | UIKIT_EXTERN NSString *const MusicItemStartMusic; 14 | // 停止播放 15 | UIKIT_EXTERN NSString *const MusicItemEndMusic; 16 | // 添加音乐 17 | UIKIT_EXTERN NSString *const MusicItemAddMusic; 18 | // 删除音乐 19 | UIKIT_EXTERN NSString *const MusicItemRemoveMusic; 20 | 21 | #pragma mark - 声明 22 | @interface MusicItemConst : NSObject 23 | SingleInterface(MusicItemConst) 24 | 25 | // 是否在播放 26 | @property (nonatomic, assign, getter=isPlaying) BOOL playing; 27 | // 是否有歌曲 28 | @property (nonatomic, assign) BOOL hasSong; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/MusicItem/MusicItemConst.m: -------------------------------------------------------------------------------- 1 | // 2 | // MusicItemConst.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/1. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "MusicItemConst.h" 10 | 11 | #pragma mark - const 12 | NSString *const MusicItemStartMusic = @"MusicItemStartMusic"; 13 | NSString *const MusicItemEndMusic = @"MusicItemEndMusic"; 14 | NSString *const MusicItemAddMusic = @"MusicItemAddMusic"; 15 | NSString *const MusicItemRemoveMusic = @"MusicItemRemoveMusic"; 16 | 17 | #pragma mark - 声明 18 | @interface MusicItemConst () 19 | 20 | @end 21 | 22 | #pragma mark - 实现 23 | @implementation MusicItemConst 24 | SingleImplementation(MusicItemConst) 25 | 26 | 27 | 28 | @end 29 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKScreenShot/KKScreenShot.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKScreenShot.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "KKPopupView.h" 10 | #import "KKScreenShotContent.h" 11 | 12 | #pragma mark - 声明 13 | @interface KKScreenShot : KKPopupView 14 | 15 | @property (nonatomic, strong) KKScreenShotContent *contentv; 16 | 17 | + (instancetype)init; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKScreenShot/KKScreenShot.m: -------------------------------------------------------------------------------- 1 | // 2 | // KKScreenShot.m 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "KKScreenShot.h" 10 | 11 | #pragma mark - 声明 12 | @interface KKScreenShot () 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation KKScreenShot 18 | 19 | + (instancetype)init { 20 | KKScreenShot *view = [super init]; 21 | [view setStyle:KKPopupStylePopup]; 22 | [view contentv]; 23 | return view; 24 | } 25 | - (KKScreenShotContent *)contentv { 26 | if (!_contentv) { 27 | __weak typeof(self) weak = self; 28 | _contentv = [KKScreenShotContent loadFirstNib:CGRectMake(0, SCREEN_HEIGHT, SCREEN_WIDTH - countcoordinatesX(100), 0)]; 29 | [_contentv.closeBtn addTapActionWithBlock:^(UIGestureRecognizer *gestureRecoginzer) { 30 | [weak hide]; 31 | }]; 32 | [self addSubview:_contentv]; 33 | [self setContent:_contentv]; 34 | } 35 | return _contentv; 36 | } 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKScreenShot/KKScreenShotContent.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKScreenShotContent.h 3 | // music 4 | // 5 | // Created by zhongke on 2018/9/29. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | NS_ASSUME_NONNULL_BEGIN 12 | 13 | @interface KKScreenShotContent : BaseView 14 | 15 | @property (weak, nonatomic) IBOutlet UIImageView *screenShot; 16 | @property (weak, nonatomic) IBOutlet UIButton *closeBtn; 17 | 18 | @end 19 | 20 | NS_ASSUME_NONNULL_END 21 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKShare/KKShare.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKShare.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/9. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "KKPopupView.h" 10 | #import "KKShareContent.h" 11 | 12 | #pragma mark - 声明 13 | @interface KKShare : KKPopupView 14 | 15 | @property (nonatomic, strong) KKShareContent *contentv; 16 | 17 | + (instancetype)init; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKShare/KKShare.m: -------------------------------------------------------------------------------- 1 | // 2 | // KKShare.m 3 | // SanYangWetland 4 | // 5 | // Created by MAC on 2018/8/21. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "KKShare.h" 10 | 11 | #pragma mark - 声明 12 | @interface KKShare () 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation KKShare 18 | 19 | + (instancetype)init { 20 | KKShare *view = [super init]; 21 | [view setStyle:KKPopupStyleBottom]; 22 | [view contentv]; 23 | return view; 24 | } 25 | - (KKShareContent *)contentv { 26 | if (!_contentv) { 27 | __weak typeof(self) weak = self; 28 | _contentv = [KKShareContent loadFirstNib:({ 29 | CGFloat height = 140; 30 | CGRectMake(0, SCREEN_HEIGHT, SCREEN_WIDTH, height); 31 | })]; 32 | [_contentv.cancleBtn addTapActionWithBlock:^(UIGestureRecognizer *gestureRecoginzer) { 33 | [weak hide]; 34 | }]; 35 | [self addSubview:_contentv]; 36 | [self setContent:_contentv]; 37 | } 38 | return _contentv; 39 | } 40 | 41 | @end 42 | 43 | 44 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKShare/KKShareContent.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKShareContent.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/9. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | #pragma mark - typedef 12 | // 点击Block 13 | typedef void (^KKShareClickBlock)(NSInteger index); 14 | // 成功Block 15 | typedef void (^KKShareSuccessBlock)(void); 16 | // 失败Block 17 | typedef void (^KKShareErrorBlock)(NSInteger code); 18 | 19 | #pragma mark - 声明 20 | @interface KKShareContent : BaseView 21 | 22 | @property (nonatomic, copy ) NSString *title; 23 | @property (nonatomic, copy ) NSString *desc; 24 | @property (nonatomic, copy ) NSString *url; 25 | @property (nonatomic, copy ) NSString *thumb; 26 | 27 | @property (nonatomic, copy ) KKShareClickBlock clickBlock; 28 | @property (nonatomic, copy ) KKShareSuccessBlock successBlock; 29 | @property (nonatomic, copy ) KKShareErrorBlock errorBlock; 30 | @property (weak, nonatomic) IBOutlet UIButton *cancleBtn; 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKSheet/KKSheet.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKSheet.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/8. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "KKPopupView.h" 10 | #import "KKSheetContent.h" 11 | 12 | #pragma mark - 声明 13 | @interface KKSheet : KKPopupView 14 | 15 | @property (nonatomic, strong) KKSheetContent *contentv; 16 | 17 | + (instancetype)init; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKSheet/KKSheet.m: -------------------------------------------------------------------------------- 1 | // 2 | // KKSheet.m 3 | // SanYangWetland 4 | // 5 | // Created by MAC on 2018/8/21. 6 | // Copyright © 2018年 Zhonglv. All rights reserved. 7 | // 8 | 9 | #import "KKSheet.h" 10 | 11 | #pragma mark - 声明 12 | @interface KKSheet () 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation KKSheet 18 | 19 | + (instancetype)init { 20 | KKSheet *view = [super init]; 21 | [view setStyle:KKPopupStyleBottom]; 22 | [view contentv]; 23 | return view; 24 | } 25 | - (KKSheetContent *)contentv { 26 | if (!_contentv) { 27 | _contentv = [KKSheetContent loadFirstNib:({ 28 | CGFloat height = countcoordinatesX((40 + 50 * 3)) + SafeAreaBottomHeight; 29 | CGRectMake(0, SCREEN_HEIGHT, SCREEN_WIDTH, height); 30 | })]; 31 | [self addSubview:_contentv]; 32 | [self setContent:_contentv]; 33 | } 34 | return _contentv; 35 | } 36 | 37 | 38 | @end 39 | 40 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKSheet/KKSheetCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKSheetCell.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/8. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseTableCell.h" 10 | 11 | #pragma mark - 声明 12 | @interface KKSheetCell : BaseTableCell 13 | 14 | @property (weak, nonatomic) IBOutlet UIImageView *icon; 15 | @property (weak, nonatomic) IBOutlet UILabel *name; 16 | @property (nonatomic, assign) BOOL enable; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKSheet/KKSheetCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // KKSheetCell.m 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/8. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "KKSheetCell.h" 10 | 11 | #pragma mark - 声明 12 | @interface KKSheetCell() 13 | 14 | @end 15 | 16 | #pragma mark - 实现 17 | @implementation KKSheetCell 18 | 19 | - (void)initUI { 20 | [self setEnable:YES]; 21 | [self.name setFont:[UIFont systemFontOfSize:AdjustFont(12)]]; 22 | [self.name setTextColor:kColor_Text_Gary]; 23 | } 24 | - (void)setEnable:(BOOL)enable { 25 | _enable = enable; 26 | if (enable == YES) { 27 | self.icon.alpha = 1; 28 | self.name.alpha = 1; 29 | } 30 | else { 31 | self.icon.alpha = 0.5; 32 | self.name.alpha = 0.5; 33 | } 34 | } 35 | 36 | @end 37 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/Popup/KKSheet/KKSheetContent.h: -------------------------------------------------------------------------------- 1 | // 2 | // KKSheetContent.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/9/8. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | #pragma mark - typedef 12 | typedef void (^KKSheetContentClick)(NSInteger index); 13 | 14 | #pragma mark - 声明 15 | @interface KKSheetContent : BaseView 16 | 17 | @property (nonatomic, copy ) KKSheetContentClick click; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/ThirdLogView/ThirdLogView.h: -------------------------------------------------------------------------------- 1 | // 2 | // ThirdLogView.h 3 | // imiss 4 | // 5 | // Created by 郑业强 on 2018/8/14. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "BaseView.h" 10 | 11 | #pragma mark - block 12 | typedef void (^ThirdLogViewEvent)(NSInteger index); 13 | 14 | #pragma mark - 声明 15 | @interface ThirdLogView : BaseView 16 | 17 | @property (nonatomic, copy ) ThirdLogViewEvent event; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/TimeTool/TimeTool.h: -------------------------------------------------------------------------------- 1 | // 2 | // TimeTool.h 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/14. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TimeTool : NSObject 12 | 13 | + (BOOL)isNight; 14 | + (UIImage *)imageNamed:(NSString *)lightImg night:(NSString *)nightImg; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /imiss-ios-master/music/Classes/Utils/TimeTool/TimeTool.m: -------------------------------------------------------------------------------- 1 | // 2 | // TimeTool.m 3 | // imiss 4 | // 5 | // Created by MAC on 2018/8/14. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import "TimeTool.h" 10 | 11 | @implementation TimeTool 12 | 13 | + (BOOL)isNight { 14 | NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 15 | [formatter setDateFormat:@"HH"]; 16 | NSString *str = [formatter stringFromDate:[NSDate date]]; 17 | int time = [str intValue]; 18 | if (time >= 18 || time <= 06) { 19 | return YES; 20 | } 21 | else{ 22 | return NO; 23 | } 24 | } 25 | 26 | + (UIImage *)imageNamed:(NSString *)lightImg night:(NSString *)nightImg { 27 | return [UIImage imageNamed:[TimeTool isNight] ? nightImg : lightImg]; 28 | } 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /imiss-ios-master/music/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // music 4 | // 5 | // Created by 郑业强 on 2018/9/24. 6 | // Copyright © 2018年 kk. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /imiss-react-master/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | 6 | # testing 7 | /coverage 8 | 9 | # production 10 | /build 11 | 12 | # misc 13 | .DS_Store 14 | .env.local 15 | .env.development.local 16 | .env.test.local 17 | .env.production.local 18 | 19 | npm-debug.log* 20 | yarn-debug.log* 21 | yarn-error.log* 22 | -------------------------------------------------------------------------------- /imiss-react-master/config-overrides.js: -------------------------------------------------------------------------------- 1 | const { injectBabelPlugin } = require('react-app-rewired'); 2 | const path = require('path'); 3 | 4 | module.exports = function override(config, env) { 5 | // config = injectBabelPlugin(['import', { libraryName: 'antd-mobile', style: 'css' }], config); 6 | return config; 7 | } 8 | -------------------------------------------------------------------------------- /imiss-react-master/config/jest/cssTransform.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | // This is a custom Jest transformer turning style imports into empty objects. 4 | // http://facebook.github.io/jest/docs/en/webpack.html 5 | 6 | module.exports = { 7 | process() { 8 | return 'module.exports = {};'; 9 | }, 10 | getCacheKey() { 11 | // The output is always the same. 12 | return 'cssTransform'; 13 | }, 14 | }; 15 | -------------------------------------------------------------------------------- /imiss-react-master/config/jest/fileTransform.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const path = require('path'); 4 | 5 | // This is a custom Jest transformer turning file imports into filenames. 6 | // http://facebook.github.io/jest/docs/en/webpack.html 7 | 8 | module.exports = { 9 | process(src, filename) { 10 | const assetFilename = JSON.stringify(path.basename(filename)); 11 | 12 | if (filename.match(/\.svg$/)) { 13 | return `module.exports = { 14 | __esModule: true, 15 | default: ${assetFilename}, 16 | ReactComponent: (props) => ({ 17 | $$typeof: Symbol.for('react.element'), 18 | type: 'svg', 19 | ref: null, 20 | key: null, 21 | props: Object.assign({}, props, { 22 | children: ${assetFilename} 23 | }) 24 | }), 25 | };`; 26 | } 27 | 28 | return `module.exports = ${assetFilename};`; 29 | }, 30 | }; 31 | -------------------------------------------------------------------------------- /imiss-react-master/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/public/favicon.ico -------------------------------------------------------------------------------- /imiss-react-master/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | } 10 | ], 11 | "start_url": ".", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /imiss-react-master/src/App.css: -------------------------------------------------------------------------------- 1 | .App { 2 | text-align: center; 3 | } 4 | 5 | .App-logo { 6 | animation: App-logo-spin infinite 20s linear; 7 | height: 40vmin; 8 | } 9 | 10 | .App-header { 11 | background-color: #282c34; 12 | min-height: 100vh; 13 | display: flex; 14 | flex-direction: column; 15 | align-items: center; 16 | justify-content: center; 17 | font-size: calc(10px + 2vmin); 18 | color: white; 19 | } 20 | 21 | .App-link { 22 | color: #61dafb; 23 | } 24 | 25 | @keyframes App-logo-spin { 26 | from { 27 | transform: rotate(0deg); 28 | } 29 | to { 30 | transform: rotate(360deg); 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /imiss-react-master/src/App.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import Tabbar from '@TABBAR_PATH/tabbar'; 3 | import Ranking from '@HOME_PATH/ranking'; 4 | import About from '@MINE_PATH/about'; 5 | import store from './redux/store/Store'; 6 | import { Provider } from 'react-redux'; 7 | import { BrowserRouter as Router, Route } from 'react-router-dom'; 8 | 9 | class App extends Component { 10 | render() { 11 | return ( 12 | 13 | 14 |
15 | 16 | 17 | 18 |
19 |
20 |
21 | ); 22 | } 23 | } 24 | 25 | export default App; 26 | -------------------------------------------------------------------------------- /imiss-react-master/src/App.test.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import App from './App'; 4 | 5 | it('renders without crashing', () => { 6 | const div = document.createElement('div'); 7 | ReactDOM.render(, div); 8 | ReactDOM.unmountComponentAtNode(div); 9 | }); 10 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/about.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .kk_about { 4 | background-color: @kColor_BG; 5 | position: fixed; 6 | width: 100%; 7 | height: 100%; 8 | top: 0; 9 | 10 | .content { 11 | margin-left: 15px; 12 | font-size: 16px; 13 | color: @kColor_Text_Gary; 14 | } 15 | } 16 | 17 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/base.less: -------------------------------------------------------------------------------- 1 | @MAIN_COLOR: #EE2C2C; 2 | 3 | @kColor_Text_Black: rgba(35, 24, 21, 1); 4 | @kColor_Text_Gary: #999999; 5 | @kColor_Text_White: rgba(255, 255, 255, 1); 6 | @kColor_BG: rgba(245, 245, 245, 1); 7 | 8 | 9 | // .average(@size) { 10 | // @media (min-width: 320px) { 11 | // @average: (@size); 12 | // } 13 | // @media (min-width: 375px) { 14 | // @average: (@size + 1); 15 | // } 16 | // @media (min-width: 620px) { 17 | // @average: (@size + 2); 18 | // } 19 | // } 20 | 21 | 22 | 23 | 24 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/header.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .kk_header { 4 | height: 49px; 5 | width: 100%; 6 | padding-left: 15px; 7 | align-items: center; 8 | flex-direction: row; 9 | display: flex; 10 | color: gray; 11 | font-size: 20px; 12 | background-color: @kColor_BG; 13 | font-family: 'ChalkboardSE-Light'; 14 | 15 | .icon { 16 | width: 20px; 17 | height: 25px; 18 | background-color: red; 19 | margin-right: 3px; 20 | } 21 | .name { 22 | 23 | } 24 | } 25 | 26 | 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/home.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .kk_home { 4 | flex-grow: 1; 5 | background-color: @kColor_BG; 6 | display: flex; 7 | flex-direction: column; 8 | } 9 | 10 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/homePopular.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .kk_homePopular { 4 | flex-grow: 1; 5 | background-color: red; 6 | display: flex; 7 | flex-direction: column; 8 | } 9 | 10 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/mine.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .kk_mine { 4 | background-color: @kColor_BG; 5 | width: 100%; 6 | height: 100%; 7 | 8 | display: flex; 9 | flex-direction: column; 10 | flex: 1; 11 | 12 | .wrapper { 13 | width: 100%; 14 | height: 100%; 15 | overflow: hidden; 16 | 17 | span { 18 | font-size: 14px; 19 | color: gray; 20 | } 21 | } 22 | 23 | 24 | .share { 25 | position: absolute; 26 | width: 100; 27 | background-color: red; 28 | padding: 30; 29 | 30 | top: 20; 31 | left: 30; 32 | } 33 | } 34 | 35 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/ranking.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .ranking { 4 | background-color: green; 5 | position: fixed; 6 | width: 100%; 7 | height: 100%; 8 | top: 0; 9 | } 10 | 11 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/sheet.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .kk_sheet { 4 | background-color: @kColor_BG; 5 | width: 100%; 6 | height: 100%; 7 | 8 | display: flex; 9 | flex-direction: column; 10 | flex: 1; 11 | 12 | .sheet { 13 | height: 120px; 14 | display: flex; 15 | flex-direction: row; 16 | align-items: center; 17 | padding-bottom: 10px; 18 | padding-top: 10px; 19 | 20 | .content { 21 | height: 100px; 22 | background-color: green; 23 | // display: flex; 24 | justify-content: center; 25 | align-items: center; 26 | flex-direction: column; 27 | margin-left: 10px; 28 | 29 | img { 30 | width: 100px; 31 | height: 100px; 32 | background-color: yellowgreen; 33 | } 34 | } 35 | } 36 | .wrapper { 37 | width: 100%; 38 | height: 100%; 39 | overflow: hidden; 40 | 41 | .list { 42 | width: 100%; 43 | } 44 | } 45 | } -------------------------------------------------------------------------------- /imiss-react-master/src/assets/css/tabbar.less: -------------------------------------------------------------------------------- 1 | @import "base.less"; 2 | 3 | .tabbar { 4 | position: fixed; 5 | height: 100%; 6 | width: 100%; 7 | top: 0px; 8 | display: flex; 9 | flex-direction: column; 10 | align-items: center; 11 | flex: 1; 12 | 13 | .content { 14 | flex: 1; 15 | width: 100%; 16 | 17 | display: flex; 18 | flex-direction: row; 19 | } 20 | 21 | .module { 22 | width: 100%; 23 | display: flex; 24 | flex-direction: row; 25 | flex: 1; 26 | overflow: hidden; 27 | } 28 | 29 | .hide { 30 | display: none; 31 | } 32 | 33 | } -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/baseline-keyboard_arrow_left-24px.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/baseline-keyboard_arrow_right-24px.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_about.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_about.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_about@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_about@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_about@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_about@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_alamclock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_alamclock.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_alamclock@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_alamclock@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_alamclock@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_alamclock@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_combo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_combo.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_combo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_combo@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_combo@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_combo@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_edit.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_edit.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_edit@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_edit@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_edit@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_edit@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_level.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_level.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_level@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_level@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_level@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_level@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_mail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_mail.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_mail@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_mail@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_mail@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_mail@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_musician.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_musician.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_musician@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_musician@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_musician@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_musician@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_night.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_night.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_night@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_night@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_night@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_night@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_scan.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_scan.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_scan@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_scan@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_scan@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_scan@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_set.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_set.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_set@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_set@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_set@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_set@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_share.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_share.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_share@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_share@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_share@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_share@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_skin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_skin.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_skin@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_skin@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_skin@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_skin@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_store.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_store.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_store@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_store@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_store@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_store@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_time.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_time.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_time@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_time@2x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm2_set_icn_time@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm2_set_icn_time@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_account@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_account@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_account_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_account_prs@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_discovery@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_discovery@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_discovery_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_discovery_prs@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_music@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_music@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_music_new@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_music_new@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_music_new_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_music_new_prs@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/cm4_btm_icn_music_prs@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/cm4_btm_icn_music_prs@3x.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/next.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/next.png -------------------------------------------------------------------------------- /imiss-react-master/src/assets/img/placeholder_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss-react-master/src/assets/img/placeholder_square.png -------------------------------------------------------------------------------- /imiss-react-master/src/component/Header.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import PropTypes from 'prop-types'; 3 | import '@CSS_PATH/header.less'; 4 | 5 | class Header extends Component { 6 | 7 | backButton = () => { 8 | return ( 9 | 10 | ) 11 | } 12 | nameLab = () => { 13 | return ( 14 |
{this.props.name}
15 | ) 16 | } 17 | render() { 18 | return ( 19 |
20 | {this.props.showBack == true && this.backButton()} 21 | {this.nameLab()} 22 |
23 | ) 24 | } 25 | } 26 | 27 | Header.defaultProps = { 28 | name: '', 29 | showBack: false, 30 | onBackClick: ()=>{}, 31 | }; 32 | 33 | Header.propTypes = { 34 | name: PropTypes.string.isRequired, 35 | showBack: PropTypes.bool.isRequired, 36 | onBackClick: PropTypes.func, 37 | }; 38 | 39 | export default Header; 40 | 41 | -------------------------------------------------------------------------------- /imiss-react-master/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", 5 | "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", 6 | sans-serif; 7 | -webkit-font-smoothing: antialiased; 8 | -moz-osx-font-smoothing: grayscale; 9 | } 10 | 11 | code { 12 | font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New", 13 | monospace; 14 | } 15 | -------------------------------------------------------------------------------- /imiss-react-master/src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import './index.css'; 4 | import App from './App'; 5 | import * as serviceWorker from './serviceWorker'; 6 | 7 | ReactDOM.render(, document.getElementById('root')); 8 | 9 | // If you want your app to work offline and load faster, you can change 10 | // unregister() to register() below. Note this comes with some pitfalls. 11 | // Learn more about service workers: http://bit.ly/CRA-PWA 12 | serviceWorker.unregister(); 13 | -------------------------------------------------------------------------------- /imiss-react-master/src/module/home/homePopular.js: -------------------------------------------------------------------------------- 1 | import '@CSS_PATH/homePopular.less'; 2 | import React, { Component } from 'react' 3 | 4 | 5 | export default class homePopular extends Component { 6 | 7 | constructor(props) { 8 | super(props); 9 | this.state = { 10 | 11 | }; 12 | } 13 | 14 | // 主视图 15 | render() { 16 | return ( 17 |
18 | HomePopular 19 |
20 | ); 21 | } 22 | } 23 | 24 | 25 | -------------------------------------------------------------------------------- /imiss-react-master/src/module/home/homeRecommend.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react' 2 | 3 | export default class homeRecommend extends Component { 4 | 5 | constructor(props) { 6 | super(props); 7 | this.state = { 8 | 9 | }; 10 | } 11 | 12 | // 主视图 13 | render() { 14 | return ( 15 |
16 | homeRecommend 17 |
18 | ); 19 | } 20 | } 21 | 22 | 23 | -------------------------------------------------------------------------------- /imiss-react-master/src/module/home/ranking.js: -------------------------------------------------------------------------------- 1 | import '@CSS_PATH/ranking.less' 2 | import React, { Component } from 'react' 3 | 4 | export default class ranking extends Component { 5 | constructor(props, context) { 6 | super(props, context); 7 | } 8 | 9 | render() { 10 | return ( 11 |
12 |
asdsadasdadasada
13 |
14 | ) 15 | } 16 | } 17 | 18 | -------------------------------------------------------------------------------- /imiss-react-master/src/module/mine/about.js: -------------------------------------------------------------------------------- 1 | import '@CSS_PATH/about.less' 2 | import React, { Component } from 'react' 3 | import Header from '@COMPONENT_PATH/Header' 4 | 5 | export default class about extends Component { 6 | 7 | constructor(props) { 8 | super(props); 9 | this.state = { 10 | 11 | }; 12 | } 13 | // 返回 14 | _onBackclick = () => { 15 | this.props.history.goBack() 16 | } 17 | // 主视图 18 | render() { 19 | return ( 20 |
21 |
22 |
没什么好说的, 烦, 看谁都烦
23 |
24 | ); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /imiss-react-master/src/redux/action/homeRecommendAction.js: -------------------------------------------------------------------------------- 1 | 2 | // 首页Action 3 | let actions = { 4 | // 首页数据 5 | homeRecommendData: ()=>({ 6 | type: "homeRecommendData" 7 | }), 8 | // 轮播图 9 | homeImage: ()=>({ 10 | type: "homeImage" 11 | }), 12 | // 主编推荐 13 | homeRecommend: ()=>({ 14 | type: "homeRecommend" 15 | }), 16 | // 热门佳作 17 | homeHot: ()=>({ 18 | type: "homeHot" 19 | }), 20 | // 完结推荐 21 | homeEditor: ()=>({ 22 | type: "homeEditor" 23 | }), 24 | } 25 | 26 | export default actions; -------------------------------------------------------------------------------- /imiss-react-master/src/redux/reducer/index.js: -------------------------------------------------------------------------------- 1 | import { combineReducers } from 'redux'; 2 | import HomeRecommendReducer from './HomeRecommendReducer'; 3 | 4 | const rootReducer = combineReducers({ 5 | HomeRecommendReducer: HomeRecommendReducer, 6 | }); 7 | 8 | export default rootReducer; 9 | 10 | -------------------------------------------------------------------------------- /imiss-react-master/src/redux/saga/HomeRecommendSagas.js: -------------------------------------------------------------------------------- 1 | // import { takeEvery, takeLatest } from 'redux-saga' 2 | import { takeLatest } from 'redux-saga' 3 | // import { call, put } from 'redux-saga/effects' 4 | // // 请求 5 | // import { 6 | // homeImage, 7 | // homeCategory, 8 | // homeRecommend, 9 | // homeHot, 10 | // homeEditor 11 | // } from '../../service/HomeApi'; 12 | 13 | function* homeRecommendData() { 14 | // // 轮播图, 分类 15 | // const [image, category] = yield [call(homeImage), call(homeCategory)]; 16 | // yield put({type: 'homeImage', homeImageJsons: image}); 17 | // yield put({type: 'homeCategory', homeCategoryJsons: category}); 18 | // // 推荐 19 | // const recommend = yield call(homeRecommend); 20 | // yield put({type: 'homeRecommend', homeRecommendJsons: recommend}); 21 | // // 热门 22 | // const hot = yield call(homeHot); 23 | // yield put({type: 'homeHot', homeHotJsons: hot}); 24 | // // 完结 25 | // const editor = yield call(homeEditor); 26 | // yield put({type: 'homeEditor', homeEditorJsons: editor}); 27 | } 28 | 29 | export function* homeRecommendSaga() { 30 | yield* takeLatest("homeRecommendData", homeRecommendData); 31 | } 32 | -------------------------------------------------------------------------------- /imiss-react-master/src/redux/saga/index.js: -------------------------------------------------------------------------------- 1 | // import { takeEvery } from 'redux-saga' 2 | import { call } from 'redux-saga/effects' 3 | // import { call, put } from 'redux-saga/effects' 4 | 5 | import { homeRecommendSaga } from './HomeRecommendSagas'; 6 | 7 | function* saga() { 8 | yield [ 9 | call(homeRecommendSaga), 10 | ] 11 | } 12 | 13 | export default saga; -------------------------------------------------------------------------------- /imiss-react-master/src/util/public.js: -------------------------------------------------------------------------------- 1 | 2 | 3 | export const MainColor = '#EE2C2C'; 4 | export const kColor_Text_Black = 'rgba(35, 24, 21, 1)'; 5 | export const kColor_Text_Gary = '#999999'; 6 | export const kColor_Text_White = 'rgba(255, 255, 255, 1)'; 7 | export const kColor_BG = 'rgba(245, 245, 245, 1)'; 8 | 9 | 10 | export const SCREEN_WIDTH = document.body.clientWidth; 11 | export const SCREEN_HEIGHT = document.body.clientHeight; 12 | export const AdjustFont = (size)=>{ 13 | // iPhone 8+ (8+, 7+, 6S+, 6+) 14 | if (SCREEN_WIDTH >= 430) { 15 | return (size + 2) + "px" 16 | } 17 | // iPhone 8 (8, 7, 6S, 6) 18 | else if (SCREEN_WIDTH >= 375) { 19 | return (size + 1) + "px" 20 | } 21 | // iPhone SE(SE, 5S, 5C) 22 | else if (SCREEN_WIDTH >= 320) { 23 | return (size) + "px" 24 | } 25 | return (size) + "px" 26 | } 27 | -------------------------------------------------------------------------------- /imiss/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["module:metro-react-native-babel-preset"] 3 | } 4 | -------------------------------------------------------------------------------- /imiss/.buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | -------------------------------------------------------------------------------- /imiss/.gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj -text 2 | -------------------------------------------------------------------------------- /imiss/.gitignore: -------------------------------------------------------------------------------- 1 | # OSX 2 | # 3 | .DS_Store 4 | 5 | # Xcode 6 | # 7 | build/ 8 | *.pbxuser 9 | !default.pbxuser 10 | *.mode1v3 11 | !default.mode1v3 12 | *.mode2v3 13 | !default.mode2v3 14 | *.perspectivev3 15 | !default.perspectivev3 16 | xcuserdata 17 | *.xccheckout 18 | *.moved-aside 19 | DerivedData 20 | *.hmap 21 | *.ipa 22 | *.xcuserstate 23 | project.xcworkspace 24 | 25 | # Android/IntelliJ 26 | # 27 | build/ 28 | .idea 29 | .gradle 30 | local.properties 31 | *.iml 32 | 33 | # node.js 34 | # 35 | node_modules/ 36 | npm-debug.log 37 | yarn-error.log 38 | 39 | # BUCK 40 | buck-out/ 41 | \.buckd/ 42 | *.keystore 43 | 44 | # fastlane 45 | # 46 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 47 | # screenshots whenever they are needed. 48 | # For more information about the recommended setup visit: 49 | # https://docs.fastlane.tools/best-practices/source-control/ 50 | 51 | */fastlane/report.xml 52 | */fastlane/Preview.html 53 | */fastlane/screenshots 54 | 55 | # Bundle artifact 56 | *.jsbundle 57 | -------------------------------------------------------------------------------- /imiss/.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /imiss/App.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Sample React Native App 3 | * https://github.com/facebook/react-native 4 | * 5 | * @format 6 | * @flow 7 | */ 8 | 9 | import React, {Component} from 'react'; 10 | import {Platform, StyleSheet, Text, View} from 'react-native'; 11 | import home from 'Home'; 12 | 13 | const instructions = Platform.select({ 14 | ios: 'Press Cmd+R to reload,\n' + 'Cmd+D or shake for dev menu', 15 | android: 16 | 'Double tap R on your keyboard to reload,\n' + 17 | 'Shake or press menu button for dev menu', 18 | }); 19 | 20 | type Props = {}; 21 | export default class App extends Component { 22 | render() { 23 | return ( 24 | 25 | 26 | 27 | ); 28 | } 29 | } 30 | 31 | const styles = StyleSheet.create({ 32 | container: { 33 | flex: 1, 34 | justifyContent: 'center', 35 | alignItems: 'center', 36 | backgroundColor: '#F5FCFF', 37 | }, 38 | welcome: { 39 | fontSize: 20, 40 | textAlign: 'center', 41 | margin: 10, 42 | }, 43 | instructions: { 44 | textAlign: 'center', 45 | color: '#333333', 46 | marginBottom: 5, 47 | }, 48 | }); 49 | -------------------------------------------------------------------------------- /imiss/Home.js: -------------------------------------------------------------------------------- 1 | 2 | /** 3 | * @providesModule Home 4 | */ 5 | 6 | import React, {Component} from 'react'; 7 | import {Platform, StyleSheet, Text, View} from 'react-native'; 8 | 9 | export default class Home extends Component { 10 | render() { 11 | return ( 12 | 13 | Home1 14 | 15 | ); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /imiss/android/app/proguard-rules.pro: -------------------------------------------------------------------------------- 1 | # Add project specific ProGuard rules here. 2 | # By default, the flags in this file are appended to flags specified 3 | # in /usr/local/Cellar/android-sdk/24.3.3/tools/proguard/proguard-android.txt 4 | # You can edit the include path and order by changing the proguardFiles 5 | # directive in build.gradle. 6 | # 7 | # For more details, see 8 | # http://developer.android.com/guide/developing/tools/proguard.html 9 | 10 | # Add any project specific keep options here: 11 | 12 | # If your project uses WebView with JS, uncomment the following 13 | # and specify the fully qualified class name to the JavaScript interface 14 | # class: 15 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview { 16 | # public *; 17 | #} 18 | -------------------------------------------------------------------------------- /imiss/android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 13 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /imiss/android/app/src/main/java/com/imiss/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.imiss; 2 | 3 | import com.facebook.react.ReactActivity; 4 | 5 | public class MainActivity extends ReactActivity { 6 | 7 | /** 8 | * Returns the name of the main component registered from JavaScript. 9 | * This is used to schedule rendering of the component. 10 | */ 11 | @Override 12 | protected String getMainComponentName() { 13 | return "imiss"; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | imiss 3 | 4 | -------------------------------------------------------------------------------- /imiss/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /imiss/android/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | ext { 5 | buildToolsVersion = "27.0.3" 6 | minSdkVersion = 16 7 | compileSdkVersion = 27 8 | targetSdkVersion = 26 9 | supportLibVersion = "27.1.1" 10 | } 11 | repositories { 12 | jcenter() 13 | google() 14 | } 15 | dependencies { 16 | classpath 'com.android.tools.build:gradle:3.1.4' 17 | 18 | // NOTE: Do not place your application dependencies here; they belong 19 | // in the individual module build.gradle files 20 | } 21 | } 22 | 23 | allprojects { 24 | repositories { 25 | mavenLocal() 26 | jcenter() 27 | maven { 28 | // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm 29 | url "$rootDir/../node_modules/react-native/android" 30 | } 31 | google() 32 | } 33 | } 34 | 35 | 36 | task wrapper(type: Wrapper) { 37 | gradleVersion = '4.4' 38 | distributionUrl = distributionUrl.replace("bin", "all") 39 | } 40 | -------------------------------------------------------------------------------- /imiss/android/gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Gradle settings configured through the IDE *will override* 5 | # any settings specified in this file. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Specifies the JVM arguments used for the daemon process. 11 | # The setting is particularly useful for tweaking memory settings. 12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m 13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 14 | 15 | # When configured, Gradle will run in incubating parallel mode. 16 | # This option should only be used with decoupled projects. More details, visit 17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 18 | # org.gradle.parallel=true 19 | -------------------------------------------------------------------------------- /imiss/android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imiss/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /imiss/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | zipStoreBase=GRADLE_USER_HOME 4 | zipStorePath=wrapper/dists 5 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip 6 | -------------------------------------------------------------------------------- /imiss/android/keystores/BUCK: -------------------------------------------------------------------------------- 1 | keystore( 2 | name = "debug", 3 | properties = "debug.keystore.properties", 4 | store = "debug.keystore", 5 | visibility = [ 6 | "PUBLIC", 7 | ], 8 | ) 9 | -------------------------------------------------------------------------------- /imiss/android/keystores/debug.keystore.properties: -------------------------------------------------------------------------------- 1 | key.store=debug.keystore 2 | key.alias=androiddebugkey 3 | key.store.password=android 4 | key.alias.password=android 5 | -------------------------------------------------------------------------------- /imiss/android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'imiss' 2 | 3 | include ':app' 4 | -------------------------------------------------------------------------------- /imiss/app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "imiss", 3 | "displayName": "imiss" 4 | } -------------------------------------------------------------------------------- /imiss/index.js: -------------------------------------------------------------------------------- 1 | /** @format */ 2 | 3 | import {AppRegistry} from 'react-native'; 4 | import App from './App'; 5 | import {name as appName} from './app.json'; 6 | 7 | AppRegistry.registerComponent(appName, () => App); 8 | -------------------------------------------------------------------------------- /imiss/ios/imiss-tvOSTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /imiss/ios/imiss/AppDelegate.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * 4 | * This source code is licensed under the MIT license found in the 5 | * LICENSE file in the root directory of this source tree. 6 | */ 7 | 8 | #import 9 | 10 | @interface AppDelegate : UIResponder 11 | 12 | @property (nonatomic, strong) UIWindow *window; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /imiss/ios/imiss/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /imiss/ios/imiss/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /imiss/ios/imiss/main.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * 4 | * This source code is licensed under the MIT license found in the 5 | * LICENSE file in the root directory of this source tree. 6 | */ 7 | 8 | #import 9 | 10 | #import "AppDelegate.h" 11 | 12 | int main(int argc, char * argv[]) { 13 | @autoreleasepool { 14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /imiss/ios/imissTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /imiss/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "imiss", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "start": "node node_modules/react-native/local-cli/cli.js start", 7 | "test": "jest" 8 | }, 9 | "dependencies": { 10 | "react": "16.5.0", 11 | "react-native": "0.57.0" 12 | }, 13 | "devDependencies": { 14 | "babel-jest": "23.6.0", 15 | "jest": "23.6.0", 16 | "metro-react-native-babel-preset": "0.48.0", 17 | "react-test-renderer": "16.5.0" 18 | }, 19 | "jest": { 20 | "preset": "react-native" 21 | } 22 | } -------------------------------------------------------------------------------- /imissMusic.paw: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/378056350/imissMusic/8599e38e5d38124f2faf81e51089188eee4ecf4a/imissMusic.paw --------------------------------------------------------------------------------