diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..ec31966 Binary files /dev/null and b/.DS_Store differ diff --git a/MyApplication/.gitignore b/MyApplication/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/MyApplication/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/MyApplication/.idea/.gitignore b/MyApplication/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/MyApplication/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/MyApplication/.idea/.name b/MyApplication/.idea/.name new file mode 100644 index 0000000..b3405b3 --- /dev/null +++ b/MyApplication/.idea/.name @@ -0,0 +1 @@ +My Application \ No newline at end of file diff --git a/MyApplication/.idea/AndroidProjectSystem.xml b/MyApplication/.idea/AndroidProjectSystem.xml new file mode 100644 index 0000000..4a53bee --- /dev/null +++ b/MyApplication/.idea/AndroidProjectSystem.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/MyApplication/.idea/compiler.xml b/MyApplication/.idea/compiler.xml new file mode 100644 index 0000000..b86273d --- /dev/null +++ b/MyApplication/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/.idea/deploymentTargetSelector.xml b/MyApplication/.idea/deploymentTargetSelector.xml new file mode 100644 index 0000000..b268ef3 --- /dev/null +++ b/MyApplication/.idea/deploymentTargetSelector.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/.idea/gradle.xml b/MyApplication/.idea/gradle.xml new file mode 100644 index 0000000..639c779 --- /dev/null +++ b/MyApplication/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/MyApplication/.idea/migrations.xml b/MyApplication/.idea/migrations.xml new file mode 100644 index 0000000..f8051a6 --- /dev/null +++ b/MyApplication/.idea/migrations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/.idea/misc.xml b/MyApplication/.idea/misc.xml new file mode 100644 index 0000000..74dd639 --- /dev/null +++ b/MyApplication/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/.idea/runConfigurations.xml b/MyApplication/.idea/runConfigurations.xml new file mode 100644 index 0000000..16660f1 --- /dev/null +++ b/MyApplication/.idea/runConfigurations.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/.gitignore b/MyApplication/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/MyApplication/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/MyApplication/app/build.gradle.kts b/MyApplication/app/build.gradle.kts new file mode 100644 index 0000000..b6b10b3 --- /dev/null +++ b/MyApplication/app/build.gradle.kts @@ -0,0 +1,56 @@ +plugins { + alias(libs.plugins.android.application) + alias(libs.plugins.kotlin.android) +} + +android { + namespace = "com.example.myapplication" + compileSdk = 36 + + buildFeatures { + viewBinding = true + dataBinding = true + } + + defaultConfig { + applicationId = "com.example.myapplication" + minSdk = 24 + targetSdk = 36 + versionCode = 1 + versionName = "1.0" + + testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + isMinifyEnabled = false + proguardFiles( + getDefaultProguardFile("proguard-android-optimize.txt"), + "proguard-rules.pro" + ) + } + } + + compileOptions { + sourceCompatibility = JavaVersion.VERSION_11 + targetCompatibility = JavaVersion.VERSION_11 + } + kotlinOptions { + jvmTarget = "11" + } +} + +dependencies { + implementation(libs.androidx.core.ktx) + implementation(libs.androidx.appcompat) + implementation(libs.material) + implementation(libs.androidx.activity) + implementation(libs.androidx.constraintlayout) + implementation("androidx.fragment:fragment-ktx:1.6.0") + implementation("androidx.viewpager2:viewpager2:1.1.0") + + testImplementation(libs.junit) + androidTestImplementation(libs.androidx.junit) + androidTestImplementation(libs.androidx.espresso.core) +} diff --git a/MyApplication/app/proguard-rules.pro b/MyApplication/app/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/MyApplication/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.kt b/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.kt new file mode 100644 index 0000000..e9283cf --- /dev/null +++ b/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.kt @@ -0,0 +1,24 @@ +package com.example.myapplication + +import androidx.test.platform.app.InstrumentationRegistry +import androidx.test.ext.junit.runners.AndroidJUnit4 + +import org.junit.Test +import org.junit.runner.RunWith + +import org.junit.Assert.* + +/** + * Instrumented test, which will execute on an Android device. + * + * See [testing documentation](http://d.android.com/tools/testing). + */ +@RunWith(AndroidJUnit4::class) +class ExampleInstrumentedTest { + @Test + fun useAppContext() { + // Context of the app under test. + val appContext = InstrumentationRegistry.getInstrumentation().targetContext + assertEquals("com.example.myapplication", appContext.packageName) + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/AndroidManifest.xml b/MyApplication/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..e2d8658 --- /dev/null +++ b/MyApplication/app/src/main/AndroidManifest.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/home-playstore.png b/MyApplication/app/src/main/home-playstore.png new file mode 100644 index 0000000..4fa989d Binary files /dev/null and b/MyApplication/app/src/main/home-playstore.png differ diff --git a/MyApplication/app/src/main/java/com/example/myapplication/AlbumFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/AlbumFragment.kt new file mode 100644 index 0000000..06de37d --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/AlbumFragment.kt @@ -0,0 +1,27 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.AlbumFragmentBinding + +class AlbumFragment: Fragment() { + lateinit var binding: AlbumFragmentBinding + + private val information = arrayListOf("수록곡", "상세정보", "영상") + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding= AlbumFragmentBinding.inflate(inflater,container,false) + + + val albumAdapter= AlbumVPAdapter(fragment = this) + binding.albumContentTp.adapter=albumAdapter + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/AlbumVPAdapter.kt b/MyApplication/app/src/main/java/com/example/myapplication/AlbumVPAdapter.kt new file mode 100644 index 0000000..a983965 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/AlbumVPAdapter.kt @@ -0,0 +1,16 @@ +package com.example.myapplication + +import androidx.fragment.app.Fragment +import androidx.viewpager2.adapter.FragmentStateAdapter + +class AlbumVPAdapter(fragment: Fragment): FragmentStateAdapter(fragment) { + override fun getItemCount(): Int=3 + + override fun createFragment(position: Int): Fragment { + return when(position){ + 0-> SongFragment() + 1-> DetailFragment() + else-> VideoFragment() + } + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/DetailFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/DetailFragment.kt new file mode 100644 index 0000000..18ec979 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/DetailFragment.kt @@ -0,0 +1,21 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.FragmentDetailBinding + +class DetailFragment: Fragment() { + lateinit var binding: FragmentDetailBinding + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding= FragmentDetailBinding.inflate(inflater,container,false) + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/HomeFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/HomeFragment.kt new file mode 100644 index 0000000..3503805 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/HomeFragment.kt @@ -0,0 +1,28 @@ +package com.example.myapplication; + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import androidx.viewpager2.widget.ViewPager2 +import com.example.myapplication.databinding.MainActivityBinding + +class HomeFragment: Fragment() { + lateinit var binding: MainActivityBinding + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding= MainActivityBinding.inflate(inflater,container,false) + + val pannelAdapter= PannelVPAdapter(fragment=this) + pannelAdapter.addFragment(PannelFragment()) + binding.homePannelVp.adapter=pannelAdapter + binding.homePannelVp.orientation= ViewPager2.ORIENTATION_HORIZONTAL + + return binding.root + } +} diff --git a/MyApplication/app/src/main/java/com/example/myapplication/LockerFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/LockerFragment.kt new file mode 100644 index 0000000..5bcb5d5 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/LockerFragment.kt @@ -0,0 +1,28 @@ +package com.example.myapplication + +import android.content.Intent +import android.os.Bundle +import android.util.Log +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.appcompat.app.AppCompatActivity +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.FragmentLockerBinding + +class LockerFragment : Fragment() { + lateinit var binding: FragmentLockerBinding + private val information = arrayListOf("저장한곡", "음악파일", "저장앨범") + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View { + binding = FragmentLockerBinding.inflate(inflater, container, false) + + val lockerAdapter = LockerVPAdapter(this) + binding.lockerContentVp.adapter = lockerAdapter + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/LockerVPAdapter.kt b/MyApplication/app/src/main/java/com/example/myapplication/LockerVPAdapter.kt new file mode 100644 index 0000000..970de2b --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/LockerVPAdapter.kt @@ -0,0 +1,16 @@ +package com.example.myapplication + +import androidx.fragment.app.Fragment +import androidx.viewpager2.adapter.FragmentStateAdapter +import com.example.myapplication.databinding.FragmentLockerMusicfileBinding + +class LockerVPAdapter (fragment : Fragment) : FragmentStateAdapter(fragment) { + override fun getItemCount(): Int = 2 + + override fun createFragment(position: Int): Fragment { + return when(position){ + 0 -> SavedSongFragment() + else -> MusicFileFragment() + } + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.kt b/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.kt new file mode 100644 index 0000000..1662cea --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.kt @@ -0,0 +1,44 @@ +package com.example.myapplication + +import android.content.Intent +import androidx.appcompat.app.AppCompatActivity +import android.os.Bundle +import androidx.viewpager2.widget.ViewPager2 +import com.example.myapplication.databinding.MainActivityBinding + +class MainActivity : AppCompatActivity() { + + private lateinit var binding: MainActivityBinding + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + binding = MainActivityBinding.inflate(layoutInflater) + setContentView(binding.root) + + val songTitle = binding.homeMiniPlayerTitle.toString() + val songSinger = binding.homeMiniPlayerSinger.text.toString() + + binding.homeMiniPlayer.setOnClickListener { + val intent = Intent(this, SongActivity::class.java) + intent.putExtra("title", songTitle) + intent.putExtra("singer", songSinger) + startActivity(intent) + } + binding.homeMiniPlayerTitle.setOnClickListener { + val intent = Intent(this, SongActivity::class.java) + intent.putExtra("title",songTitle) + intent.putExtra("singer",songSinger) + startActivity(intent) + } + binding.homeMiniPlayerSinger.setOnClickListener { + val intent = Intent(this, SongActivity::class.java) + intent.putExtra("title",songTitle) + intent.putExtra("singer",songSinger) + startActivity(intent) + } + + binding.homePannelVp.adapter = PannelVPAdapter(fragment = supportFragmentManager.findFragmentById(R.id.homeFragment)!!) + binding.homePannelVp.orientation = ViewPager2.ORIENTATION_HORIZONTAL + + } +} diff --git a/MyApplication/app/src/main/java/com/example/myapplication/MusicFileFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/MusicFileFragment.kt new file mode 100644 index 0000000..bd6e572 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/MusicFileFragment.kt @@ -0,0 +1,20 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.FragmentLockerMusicfileBinding +import com.example.myapplication.databinding.FragmentVideoBinding + +class MusicFileFragment: Fragment() { + + lateinit var binding: FragmentLockerMusicfileBinding + + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { + binding = FragmentLockerMusicfileBinding.inflate(inflater, container, false) + + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/PannelFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/PannelFragment.kt new file mode 100644 index 0000000..899cb4a --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/PannelFragment.kt @@ -0,0 +1,24 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.FragmentPannelBinding + +class PannelFragment : Fragment(){ + + lateinit var binding: FragmentPannelBinding + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + + binding= FragmentPannelBinding.inflate(inflater,container,false) + + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/PannelVPAdapter.kt b/MyApplication/app/src/main/java/com/example/myapplication/PannelVPAdapter.kt new file mode 100644 index 0000000..fad960e --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/PannelVPAdapter.kt @@ -0,0 +1,20 @@ +package com.example.myapplication + +import androidx.fragment.app.Fragment +import androidx.viewpager2.adapter.FragmentStateAdapter +import java.util.ArrayList + + +class PannelVPAdapter(fragment: Fragment) : FragmentStateAdapter(fragment){ + + private val fragmentlist: ArrayList =ArrayList() + + override fun getItemCount(): Int = fragmentlist.size + + override fun createFragment(position: Int): Fragment =fragmentlist[position] + + fun addFragment(fragment: Fragment){ + fragmentlist.add(fragment) + notifyItemInserted(fragmentlist.size-1) + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/SavedSongFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/SavedSongFragment.kt new file mode 100644 index 0000000..903399d --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/SavedSongFragment.kt @@ -0,0 +1,29 @@ +package com.example.myapplication + +import android.os.Bundle +import android.os.Handler +import android.os.Looper +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import androidx.recyclerview.widget.LinearLayoutManager +import com.example.myapplication.databinding.FragmentLockerSavedsongBinding + +class SavedSongFragment : Fragment() { + lateinit var binding: FragmentLockerSavedsongBinding + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding = FragmentLockerSavedsongBinding.inflate(inflater, container, false) + + return binding.root + } + + override fun onStart() { + super.onStart() + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/SongFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/SongFragment.kt new file mode 100644 index 0000000..c4ffad9 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/SongFragment.kt @@ -0,0 +1,21 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.FragmentSongBinding + +class SongFragment: Fragment() { + lateinit var binding: FragmentSongBinding + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding= FragmentSongBinding.inflate(inflater,container,false) + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/VideoFragment.kt b/MyApplication/app/src/main/java/com/example/myapplication/VideoFragment.kt new file mode 100644 index 0000000..6c37384 --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/VideoFragment.kt @@ -0,0 +1,21 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.LayoutInflater +import android.view.View +import android.view.ViewGroup +import androidx.fragment.app.Fragment +import com.example.myapplication.databinding.FragmentVideoBinding + +class VideoFragment: Fragment() { + lateinit var binding: FragmentVideoBinding + + override fun onCreateView( + inflater: LayoutInflater, + container: ViewGroup?, + savedInstanceState: Bundle? + ): View? { + binding= FragmentVideoBinding.inflate(inflater,container,false) + return binding.root + } +} \ No newline at end of file diff --git a/MyApplication/app/src/main/java/com/example/myapplication/song_activity.kt b/MyApplication/app/src/main/java/com/example/myapplication/song_activity.kt new file mode 100644 index 0000000..1420d1a --- /dev/null +++ b/MyApplication/app/src/main/java/com/example/myapplication/song_activity.kt @@ -0,0 +1,43 @@ +package com.example.myapplication + +import android.os.Bundle +import android.view.View +import androidx.appcompat.app.AppCompatActivity +import com.example.myapplication.databinding.SongActivityBinding + +class SongActivity : AppCompatActivity() { + lateinit var binding: SongActivityBinding + + + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + binding = SongActivityBinding.inflate(layoutInflater) + setContentView(binding.root) + + if (intent.hasExtra("title") && intent.hasExtra("singer")) { + binding.songActivityTitle.text = intent.getStringExtra("title") + binding.songActivitySinger.text = intent.getStringExtra("singer") + } + + binding.songActivityArrowDown.setOnClickListener { + finish() + } + + + } + + private fun setPlayerStatus (isPlaying : Boolean){ + + if(isPlaying){ + // 재생 상태일 때 + binding.songActivityPlayPlayerImgIv.visibility = View.GONE + //binding.songPauseIv.visibility = View.VISIBLE + } else { + // 일시정지 상태일 때 + binding.songActivityPlayPlayerImgIv.visibility = View.VISIBLE + //binding.songPauseIv.visibility = View.GONE + + } + } + +} \ No newline at end of file diff --git a/MyApplication/app/src/main/res/drawable/btn_actionbar_instagram.png b/MyApplication/app/src/main/res/drawable/btn_actionbar_instagram.png new file mode 100644 index 0000000..90bc027 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_actionbar_instagram.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_main_arrow_more.png b/MyApplication/app/src/main/res/drawable/btn_main_arrow_more.png new file mode 100644 index 0000000..59e410c Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_main_arrow_more.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_main_mike.png b/MyApplication/app/src/main/res/drawable/btn_main_mike.png new file mode 100644 index 0000000..9bddec6 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_main_mike.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_main_setting.png b/MyApplication/app/src/main/res/drawable/btn_main_setting.png new file mode 100644 index 0000000..7a8d5d6 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_main_setting.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_main_ticket.png b/MyApplication/app/src/main/res/drawable/btn_main_ticket.png new file mode 100644 index 0000000..52b6d64 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_main_ticket.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_miniplay_pause.png b/MyApplication/app/src/main/res/drawable/btn_miniplay_pause.png new file mode 100644 index 0000000..470e046 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_miniplay_pause.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_miniplayer_go_list.png b/MyApplication/app/src/main/res/drawable/btn_miniplayer_go_list.png new file mode 100644 index 0000000..1b2d977 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_miniplayer_go_list.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_miniplayer_next.png b/MyApplication/app/src/main/res/drawable/btn_miniplayer_next.png new file mode 100644 index 0000000..3aedba3 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_miniplayer_next.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_miniplayer_play.png b/MyApplication/app/src/main/res/drawable/btn_miniplayer_play.png new file mode 100644 index 0000000..f619072 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_miniplayer_play.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_miniplayer_previous.png b/MyApplication/app/src/main/res/drawable/btn_miniplayer_previous.png new file mode 100644 index 0000000..d0bf1f6 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_miniplayer_previous.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_panel_play_large.png b/MyApplication/app/src/main/res/drawable/btn_panel_play_large.png new file mode 100644 index 0000000..4ac7103 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_panel_play_large.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_player_more.png b/MyApplication/app/src/main/res/drawable/btn_player_more.png new file mode 100644 index 0000000..a8ad9e6 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_player_more.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_player_play.png b/MyApplication/app/src/main/res/drawable/btn_player_play.png new file mode 100644 index 0000000..f6c3201 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_player_play.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_player_related.png b/MyApplication/app/src/main/res/drawable/btn_player_related.png new file mode 100644 index 0000000..9026fe5 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_player_related.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_player_setting.png b/MyApplication/app/src/main/res/drawable/btn_player_setting.png new file mode 100644 index 0000000..0df8f69 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_player_setting.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_player_unlike_off.png b/MyApplication/app/src/main/res/drawable/btn_player_unlike_off.png new file mode 100644 index 0000000..b539504 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_player_unlike_off.png differ diff --git a/MyApplication/app/src/main/res/drawable/btn_playlist_select_off.png b/MyApplication/app/src/main/res/drawable/btn_playlist_select_off.png new file mode 100644 index 0000000..62ef45c Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/btn_playlist_select_off.png differ diff --git a/MyApplication/app/src/main/res/drawable/ic_bottom_home_no_select.png b/MyApplication/app/src/main/res/drawable/ic_bottom_home_no_select.png new file mode 100644 index 0000000..69a8ab6 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/ic_bottom_home_no_select.png differ diff --git a/MyApplication/app/src/main/res/drawable/ic_bottom_locker_no_select.png b/MyApplication/app/src/main/res/drawable/ic_bottom_locker_no_select.png new file mode 100644 index 0000000..a67dec3 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/ic_bottom_locker_no_select.png differ diff --git a/MyApplication/app/src/main/res/drawable/ic_bottom_look_no_select.png b/MyApplication/app/src/main/res/drawable/ic_bottom_look_no_select.png new file mode 100644 index 0000000..6c2f4f0 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/ic_bottom_look_no_select.png differ diff --git a/MyApplication/app/src/main/res/drawable/ic_bottom_search_no_select.png b/MyApplication/app/src/main/res/drawable/ic_bottom_search_no_select.png new file mode 100644 index 0000000..a77b8c5 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/ic_bottom_search_no_select.png differ diff --git a/MyApplication/app/src/main/res/drawable/ic_launcher_foreground.xml b/MyApplication/app/src/main/res/drawable/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/MyApplication/app/src/main/res/drawable/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/drawable/ic_my_like_off.png b/MyApplication/app/src/main/res/drawable/ic_my_like_off.png new file mode 100644 index 0000000..c06e139 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/ic_my_like_off.png differ diff --git a/MyApplication/app/src/main/res/drawable/icon_browse_arrow_right.png b/MyApplication/app/src/main/res/drawable/icon_browse_arrow_right.png new file mode 100644 index 0000000..71b588b Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/icon_browse_arrow_right.png differ diff --git a/MyApplication/app/src/main/res/drawable/img_album_exp.png b/MyApplication/app/src/main/res/drawable/img_album_exp.png new file mode 100644 index 0000000..6e3f38a Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/img_album_exp.png differ diff --git a/MyApplication/app/src/main/res/drawable/img_album_exp2.png b/MyApplication/app/src/main/res/drawable/img_album_exp2.png new file mode 100644 index 0000000..28ea3ee Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/img_album_exp2.png differ diff --git a/MyApplication/app/src/main/res/drawable/img_first_album_default.png b/MyApplication/app/src/main/res/drawable/img_first_album_default.png new file mode 100644 index 0000000..926d34f Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/img_first_album_default.png differ diff --git a/MyApplication/app/src/main/res/drawable/nugu_btn_down.png b/MyApplication/app/src/main/res/drawable/nugu_btn_down.png new file mode 100644 index 0000000..03a04c5 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/nugu_btn_down.png differ diff --git a/MyApplication/app/src/main/res/drawable/nugu_btn_random_inactive.png b/MyApplication/app/src/main/res/drawable/nugu_btn_random_inactive.png new file mode 100644 index 0000000..fe4f880 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/nugu_btn_random_inactive.png differ diff --git a/MyApplication/app/src/main/res/drawable/nugu_btn_repeat_inactive.png b/MyApplication/app/src/main/res/drawable/nugu_btn_repeat_inactive.png new file mode 100644 index 0000000..1e4044d Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/nugu_btn_repeat_inactive.png differ diff --git a/MyApplication/app/src/main/res/drawable/nugu_btn_skip_next_32.png b/MyApplication/app/src/main/res/drawable/nugu_btn_skip_next_32.png new file mode 100644 index 0000000..fc02f28 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/nugu_btn_skip_next_32.png differ diff --git a/MyApplication/app/src/main/res/drawable/nugu_btn_skip_previous_32.png b/MyApplication/app/src/main/res/drawable/nugu_btn_skip_previous_32.png new file mode 100644 index 0000000..03ec854 Binary files /dev/null and b/MyApplication/app/src/main/res/drawable/nugu_btn_skip_previous_32.png differ diff --git a/MyApplication/app/src/main/res/layout/album_fragment.xml b/MyApplication/app/src/main/res/layout/album_fragment.xml new file mode 100644 index 0000000..ca3ffd1 --- /dev/null +++ b/MyApplication/app/src/main/res/layout/album_fragment.xml @@ -0,0 +1,179 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/bottom_nav.xml b/MyApplication/app/src/main/res/layout/bottom_nav.xml new file mode 100644 index 0000000..90fb28d --- /dev/null +++ b/MyApplication/app/src/main/res/layout/bottom_nav.xml @@ -0,0 +1,9 @@ + + diff --git a/MyApplication/app/src/main/res/layout/fragment_detail.xml b/MyApplication/app/src/main/res/layout/fragment_detail.xml new file mode 100644 index 0000000..5b2508d --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_detail.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/fragment_locker.xml b/MyApplication/app/src/main/res/layout/fragment_locker.xml new file mode 100644 index 0000000..a75cb48 --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_locker.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/fragment_locker_musicfile.xml b/MyApplication/app/src/main/res/layout/fragment_locker_musicfile.xml new file mode 100644 index 0000000..a644f87 --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_locker_musicfile.xml @@ -0,0 +1,16 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/fragment_locker_savedsong.xml b/MyApplication/app/src/main/res/layout/fragment_locker_savedsong.xml new file mode 100644 index 0000000..738f72e --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_locker_savedsong.xml @@ -0,0 +1,18 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/fragment_pannel.xml b/MyApplication/app/src/main/res/layout/fragment_pannel.xml new file mode 100644 index 0000000..947862a --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_pannel.xml @@ -0,0 +1,18 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/fragment_song.xml b/MyApplication/app/src/main/res/layout/fragment_song.xml new file mode 100644 index 0000000..801462f --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_song.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/fragment_video.xml b/MyApplication/app/src/main/res/layout/fragment_video.xml new file mode 100644 index 0000000..547a66f --- /dev/null +++ b/MyApplication/app/src/main/res/layout/fragment_video.xml @@ -0,0 +1,17 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/main_activity.xml b/MyApplication/app/src/main/res/layout/main_activity.xml new file mode 100644 index 0000000..fe2ab38 --- /dev/null +++ b/MyApplication/app/src/main/res/layout/main_activity.xml @@ -0,0 +1,279 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/layout/song_activity.xml b/MyApplication/app/src/main/res/layout/song_activity.xml new file mode 100644 index 0000000..ff4c279 --- /dev/null +++ b/MyApplication/app/src/main/res/layout/song_activity.xml @@ -0,0 +1,260 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/menu/bottom_nav_menu.xml b/MyApplication/app/src/main/res/menu/bottom_nav_menu.xml new file mode 100644 index 0000000..1c755c4 --- /dev/null +++ b/MyApplication/app/src/main/res/menu/bottom_nav_menu.xml @@ -0,0 +1,22 @@ + + + + + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/mipmap-anydpi-v26/home.xml b/MyApplication/app/src/main/res/mipmap-anydpi-v26/home.xml new file mode 100644 index 0000000..1f52861 --- /dev/null +++ b/MyApplication/app/src/main/res/mipmap-anydpi-v26/home.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/mipmap-anydpi-v26/home_round.xml b/MyApplication/app/src/main/res/mipmap-anydpi-v26/home_round.xml new file mode 100644 index 0000000..1f52861 --- /dev/null +++ b/MyApplication/app/src/main/res/mipmap-anydpi-v26/home_round.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml new file mode 100644 index 0000000..6f3b755 --- /dev/null +++ b/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml new file mode 100644 index 0000000..6f3b755 --- /dev/null +++ b/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/mipmap-hdpi/home.webp b/MyApplication/app/src/main/res/mipmap-hdpi/home.webp new file mode 100644 index 0000000..734235c Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-hdpi/home.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-hdpi/home_round.webp b/MyApplication/app/src/main/res/mipmap-hdpi/home_round.webp new file mode 100644 index 0000000..5e11903 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-hdpi/home_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp new file mode 100644 index 0000000..c209e78 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp new file mode 100644 index 0000000..b2dfe3d Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-mdpi/home.webp b/MyApplication/app/src/main/res/mipmap-mdpi/home.webp new file mode 100644 index 0000000..cd072e3 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-mdpi/home.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-mdpi/home_round.webp b/MyApplication/app/src/main/res/mipmap-mdpi/home_round.webp new file mode 100644 index 0000000..fdb835a Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-mdpi/home_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp new file mode 100644 index 0000000..4f0f1d6 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp new file mode 100644 index 0000000..62b611d Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xhdpi/home.webp b/MyApplication/app/src/main/res/mipmap-xhdpi/home.webp new file mode 100644 index 0000000..680dc67 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xhdpi/home.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xhdpi/home_round.webp b/MyApplication/app/src/main/res/mipmap-xhdpi/home_round.webp new file mode 100644 index 0000000..2d1537d Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xhdpi/home_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp new file mode 100644 index 0000000..948a307 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp new file mode 100644 index 0000000..1b9a695 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxhdpi/home.webp b/MyApplication/app/src/main/res/mipmap-xxhdpi/home.webp new file mode 100644 index 0000000..fc66c42 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxhdpi/home.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxhdpi/home_round.webp b/MyApplication/app/src/main/res/mipmap-xxhdpi/home_round.webp new file mode 100644 index 0000000..b6615f9 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxhdpi/home_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp new file mode 100644 index 0000000..28d4b77 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp new file mode 100644 index 0000000..9287f50 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxxhdpi/home.webp b/MyApplication/app/src/main/res/mipmap-xxxhdpi/home.webp new file mode 100644 index 0000000..32a13ef Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxxhdpi/home.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxxhdpi/home_round.webp b/MyApplication/app/src/main/res/mipmap-xxxhdpi/home_round.webp new file mode 100644 index 0000000..de82679 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxxhdpi/home_round.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp new file mode 100644 index 0000000..aa7d642 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp differ diff --git a/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp new file mode 100644 index 0000000..9126ae3 Binary files /dev/null and b/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp differ diff --git a/MyApplication/app/src/main/res/values-night/themes.xml b/MyApplication/app/src/main/res/values-night/themes.xml new file mode 100644 index 0000000..d25b0f2 --- /dev/null +++ b/MyApplication/app/src/main/res/values-night/themes.xml @@ -0,0 +1,7 @@ + + + + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/values/colors.xml b/MyApplication/app/src/main/res/values/colors.xml new file mode 100644 index 0000000..bb377e5 --- /dev/null +++ b/MyApplication/app/src/main/res/values/colors.xml @@ -0,0 +1,9 @@ + + + #FF000000 + #FFFFFFFF + #DCDCDC + #0000CD + #808080 + #696969 + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/values/strings.xml b/MyApplication/app/src/main/res/values/strings.xml new file mode 100644 index 0000000..3de1a39 --- /dev/null +++ b/MyApplication/app/src/main/res/values/strings.xml @@ -0,0 +1,3 @@ + + My Application + \ No newline at end of file diff --git a/MyApplication/app/src/main/res/values/themes.xml b/MyApplication/app/src/main/res/values/themes.xml new file mode 100644 index 0000000..d66ac09 --- /dev/null +++ b/MyApplication/app/src/main/res/values/themes.xml @@ -0,0 +1,9 @@ + + + + +