Android音乐App开发准备( 简易音乐 一 )
关于
年前学习网易云因为app,想着学习网易云app的界面以及功能开发。年前那会刚毕业没多久,技术能力一般,项目就只是用了mvp框架,用了很多第三方。然后最近拿来在原来基础上进行完善顺便学习一下音乐的各种播放api。
第一步,获取音乐来源
首先就需要音乐来源,然后我百度了网易云音乐API(网上好多):
,当然了我选择的自己搭建的,你也可以去github按照教程一步一步来,看到这个界面就表示成功了。
第二步,开发环境
这里假设上一步你已经实现啦,下面是一些项目基本配置:
- 开发工具 android studio 3.5.3
- 开发语音 JAVA
- 主要使用技术 butterknife+retrofit2+rxjava2+glide(基本的就是这样,后面还会有其他的会再介绍)
第三步,引用三方
首先是项目根目录功能引用:
dependencies {
classpath 'com.android.tools.build:gradle:3.5.3'
classpath 'com.jakewharton:butterknife-gradle-plugin:10.2.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
maven {
url "https://jitpack.io" }
}
}
项目目录build.gradle配置(因为涉及多dex的配置,我就直接贴全了):
android {
compileSdkVersion 30
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "com.tobey.jianyimusic"
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
dexOptions {
//优化dex配置
dexInProcess true
preDexLibraries true
javaMaxHeapSize "2g" //Java SDK 64位
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
dependencies {
//第三方引用开始
implementation 'androidx.coordinatorlayout:coordinatorlayout:1.0.0'
//黄油刀
implementation 'com.jakewharton:butterknife:10.2.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.0'
//权限
implementation 'com.permissionx.guolindev:permissionx:1.4.0'
//glide引用
implementation 'com.github.bumptech.glide:glide:4.11.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.11.0'
//网络请求retrofit
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
//RxJava
implementation 'io.reactivex.rxjava2:rxjava:2.1.7'
//RxAndroid
implementation 'io.reactivex.rxjava2:rxandroid:2.0.1'
//Retrofit 支持Rxjava 的支持库
implementation 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0&