Skip to content

Commit 60d6eb0

Browse files
perusudroidperusudroid
perusudroid
authored and
perusudroid
committed
FinalCommit
1 parent 8a21ed1 commit 60d6eb0

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+1148
-311
lines changed

app/build.gradle

+9-3
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ apply plugin: 'com.android.application'
33
apply plugin: 'kotlin-android'
44

55
apply plugin: 'kotlin-android-extensions'
6+
apply plugin: 'com.google.gms.google-services'
67

78
android {
89
compileSdkVersion 28
910
defaultConfig {
10-
applicationId "com.perusudroid.myapplication"
11+
applicationId "com.perusudroid.exoplay"
1112
minSdkVersion 21
1213
targetSdkVersion 28
1314
versionCode 1
@@ -37,9 +38,14 @@ dependencies {
3738
testImplementation 'junit:junit:4.12'
3839
androidTestImplementation 'com.android.support.test:runner:1.0.2'
3940
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
40-
implementation 'com.squareup.retrofit2:retrofit:2.4.0'
41-
implementation 'com.squareup.retrofit2:converter-gson:2.4.0'
41+
implementation 'com.squareup.retrofit2:retrofit:2.5.0'
42+
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
4243
implementation 'com.squareup.okhttp3:logging-interceptor:3.10.0'
4344
implementation 'com.github.bumptech.glide:glide:4.9.0'
4445
implementation 'com.google.android.exoplayer:exoplayer:2.8.2'
46+
implementation 'com.google.firebase:firebase-auth:16.1.0'
47+
implementation 'com.google.firebase:firebase-core:16.0.7'
48+
implementation 'com.google.firebase:firebase-database:16.1.0'
49+
implementation 'com.firebase:firebase-client-android:2.4.0'
50+
implementation 'com.google.android.gms:play-services-auth:16.0.1'
4551
}

app/google-services.json

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
{
2+
"project_info": {
3+
"project_number": "48121146329",
4+
"firebase_url": "https://exoplay-d0c59.firebaseio.com",
5+
"project_id": "exoplay-d0c59",
6+
"storage_bucket": "exoplay-d0c59.appspot.com"
7+
},
8+
"client": [
9+
{
10+
"client_info": {
11+
"mobilesdk_app_id": "1:48121146329:android:d9956e79e940da4d",
12+
"android_client_info": {
13+
"package_name": "com.perusudroid.exoplay"
14+
}
15+
},
16+
"oauth_client": [
17+
{
18+
"client_id": "48121146329-k1l4chg7se72uivrhbpqbad51lshc1oa.apps.googleusercontent.com",
19+
"client_type": 1,
20+
"android_info": {
21+
"package_name": "com.perusudroid.exoplay",
22+
"certificate_hash": "0f5fc06ad9a63ed13c4b44981889da428ac009bb"
23+
}
24+
},
25+
{
26+
"client_id": "48121146329-dudpqptrd5a9ua5s0bvu7cmosfq93j2n.apps.googleusercontent.com",
27+
"client_type": 3
28+
}
29+
],
30+
"api_key": [
31+
{
32+
"current_key": "AIzaSyDHj8O2AciclZzftP4JU_lLCTrGzTNMzXI"
33+
}
34+
],
35+
"services": {
36+
"analytics_service": {
37+
"status": 1
38+
},
39+
"appinvite_service": {
40+
"status": 2,
41+
"other_platform_oauth_client": [
42+
{
43+
"client_id": "48121146329-dudpqptrd5a9ua5s0bvu7cmosfq93j2n.apps.googleusercontent.com",
44+
"client_type": 3
45+
}
46+
]
47+
},
48+
"ads_service": {
49+
"status": 2
50+
}
51+
}
52+
}
53+
],
54+
"configuration_version": "1"
55+
}

app/src/androidTest/java/com/perusudroid/myapplication/ExampleInstrumentedTest.kt renamed to app/src/androidTest/java/com/perusudroid/exoplay/ExampleInstrumentedTest.kt

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.perusudroid.myapplication
1+
package com.perusudroid.exoplay
22

33
import android.support.test.InstrumentationRegistry
44
import android.support.test.runner.AndroidJUnit4
@@ -19,6 +19,6 @@ class ExampleInstrumentedTest {
1919
fun useAppContext() {
2020
// Context of the app under test.
2121
val appContext = InstrumentationRegistry.getTargetContext()
22-
assertEquals("com.perusudroid.myapplication", appContext.packageName)
22+
assertEquals("com.perusudroid.exoplay", appContext.packageName)
2323
}
2424
}

app/src/main/AndroidManifest.xml

+8-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3-
package="com.perusudroid.myapplication">
3+
package="com.perusudroid.exoplay">
44

55
<uses-permission android:name="android.permission.INTERNET" />
66

@@ -11,17 +11,18 @@
1111
android:roundIcon="@mipmap/ic_launcher_round"
1212
android:supportsRtl="true"
1313
android:theme="@style/AppTheme">
14-
<activity android:name=".view.activity.LaunchActivity">
14+
<activity android:name=".view.activity.LoginActivity">
1515
<intent-filter>
1616
<action android:name="android.intent.action.MAIN" />
1717

1818
<category android:name="android.intent.category.LAUNCHER" />
1919
</intent-filter>
2020
</activity>
21-
<activity android:name=".view.activity.DetailActivity"
22-
android:theme="@style/AppThemeNoToolbar"
21+
<activity android:name=".view.activity.LaunchActivity" />
22+
<activity
23+
android:name="view.activity.DetailActivity"
2324
android:launchMode="singleTop"
24-
>
25+
android:theme="@style/AppThemeNoToolbar">
2526
<intent-filter>
2627
<action android:name="com.google.android.exoplayer.demo.action.VIEW" />
2728

@@ -34,6 +35,8 @@
3435
<data android:scheme="file" />
3536
</intent-filter>
3637
</activity>
38+
<activity android:name=".view.activity.MainActivity"/>
39+
<activity android:name=".view.activity.DetailActivity"/>
3740
</application>
3841

3942
</manifest>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
package com.perusudroid.exoplay.adapter
2+
3+
import android.support.v7.widget.CardView
4+
import android.support.v7.widget.RecyclerView
5+
import android.view.LayoutInflater
6+
import android.view.View
7+
import android.view.ViewGroup
8+
import android.widget.ImageView
9+
import android.widget.TextView
10+
import com.bumptech.glide.Glide
11+
import com.perusudroid.exoplay.R
12+
import com.perusudroid.exoplay.adapter.listener.IBaseListener
13+
import com.perusudroid.exoplay.model.VideoListResponse
14+
15+
class DetailAdapter(list : List<VideoListResponse>) : RecyclerView.Adapter<DetailAdapter.ViewHolder>() {
16+
17+
private var mList : List<VideoListResponse> = list
18+
19+
override fun onCreateViewHolder(viewGroup: ViewGroup, viewType: Int): DetailAdapter.ViewHolder {
20+
return DetailAdapter.ViewHolder(LayoutInflater.from(viewGroup.context).inflate(R.layout.inflater_detail_list, viewGroup, false))
21+
}
22+
23+
override fun getItemCount(): Int = mList.size
24+
25+
override fun onBindViewHolder(viewHolder: DetailAdapter.ViewHolder, position: Int) {
26+
viewHolder.bindData(mList[position])
27+
}
28+
29+
class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView){
30+
31+
private var ivPic : ImageView = itemView.findViewById(R.id.ivPic)
32+
private var tvTitle : TextView = itemView.findViewById(R.id.tvTitle)
33+
private var tvDesc : TextView = itemView.findViewById(R.id.tvDesc)
34+
35+
36+
37+
fun bindData(videoListResponse: VideoListResponse) {
38+
itemView.tag = videoListResponse
39+
tvTitle.text = videoListResponse.title
40+
tvDesc.text = videoListResponse.description
41+
42+
Glide.with(itemView.context)
43+
.load(videoListResponse.thumb)
44+
.centerCrop()
45+
.into(ivPic)
46+
47+
}
48+
49+
}
50+
51+
}

app/src/main/java/com/perusudroid/myapplication/adapter/LaunchAdapter.kt renamed to app/src/main/java/com/perusudroid/exoplay/adapter/LaunchAdapter.kt

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.perusudroid.myapplication.adapter
1+
package com.perusudroid.exoplay.adapter
22

33
import android.support.v7.widget.CardView
44
import android.support.v7.widget.RecyclerView
@@ -8,9 +8,9 @@ import android.view.ViewGroup
88
import android.widget.ImageView
99
import android.widget.TextView
1010
import com.bumptech.glide.Glide
11-
import com.perusudroid.myapplication.R
12-
import com.perusudroid.myapplication.adapter.listener.IBaseListener
13-
import com.perusudroid.myapplication.model.VideoListResponse
11+
import com.perusudroid.exoplay.R
12+
import com.perusudroid.exoplay.adapter.listener.IBaseListener
13+
import com.perusudroid.exoplay.model.VideoListResponse
1414

1515
class LaunchAdapter(list : List<VideoListResponse>, val listener : IBaseListener) : RecyclerView.Adapter<LaunchAdapter.ViewHolder>() {
1616

app/src/main/java/com/perusudroid/myapplication/adapter/listener/IBaseListener.kt renamed to app/src/main/java/com/perusudroid/exoplay/adapter/listener/IBaseListener.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.perusudroid.myapplication.adapter.listener
1+
package com.perusudroid.exoplay.adapter.listener
22

33
interface IBaseListener {
44

app/src/main/java/com/perusudroid/myapplication/common/Constants.kt renamed to app/src/main/java/com/perusudroid/exoplay/common/Constants.kt

+14-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package com.perusudroid.myapplication.common
1+
package com.perusudroid.exoplay.common
22

33
object Constants {
44

@@ -11,13 +11,13 @@ object Constants {
1111
const val DATA = "DATA"
1212
}
1313

14-
object Common{
14+
object Common {
1515
const val HANDLER_MSS = 1000L
1616
const val STATE_PLAYING = 1
1717
const val STATE_NOT_PLAYING = 2
1818
}
1919

20-
object DB{
20+
object DB {
2121
const val DATABASE_NAME = "exo_db"
2222
const val DATABASE_VERSION = 1
2323
const val TABLE_NAME = "exoplay"
@@ -28,4 +28,15 @@ object Constants {
2828
const val COLUMN_CREATED_TIMESTAMP = "created_on"
2929
const val COLUMN_UPDATED_TIMESTAMP = "updated_on"
3030
}
31+
32+
object FireBase {
33+
const val FIREBASE_URL = "https://your-app.firebaseio.com/"
34+
const val FIREBASE_LOCATION_USERS = "users"
35+
const val FIREBASE_URL_USERS = FIREBASE_URL + FIREBASE_LOCATION_USERS
36+
const val FIREBASE_PROPERTY_TIMESTAMP = "timestamp"
37+
}
38+
39+
object RC{
40+
const val GOOGLE_REQUEST = 9001
41+
}
3142
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package com.perusudroid.exoplay.common
2+
3+
import java.text.SimpleDateFormat
4+
import java.util.*
5+
6+
7+
object Snippet {
8+
9+
10+
11+
fun getCurrentDate(): String? {
12+
13+
val df = SimpleDateFormat("dd-MMM-yyyy", Locale.getDefault())
14+
return df.format(Calendar.getInstance().time)
15+
16+
}
17+
18+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package com.perusudroid.exoplay.model
2+
3+
import java.io.Serializable
4+
5+
data class BundlePOJO (val mList : List<VideoListResponse>,
6+
val playablePosition : Int,
7+
val currentTitle : String,
8+
val currentDesc : String
9+
) : Serializable
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package com.perusudroid.exoplay.model;
2+
3+
import java.util.HashMap;
4+
5+
/**
6+
* Created by Gino Osahon on 04/03/2017.
7+
*/
8+
9+
public class FirebaseModel {
10+
11+
private String fullName;
12+
private String photo;
13+
private String email;
14+
private HashMap<String,Object> timestampJoined;
15+
16+
public FirebaseModel() {
17+
}
18+
19+
/**
20+
* Use this constructor to create new User.
21+
* Takes user name, email and timestampJoined as params
22+
*
23+
* @param timestampJoined
24+
*/
25+
public FirebaseModel(String mFullName, String mPhoneNo, String mEmail, HashMap<String, Object> timestampJoined) {
26+
this.fullName = mFullName;
27+
this.photo = mPhoneNo;
28+
this.email = mEmail;
29+
this.timestampJoined = timestampJoined;
30+
}
31+
32+
33+
public String getFullName() {
34+
return fullName;
35+
}
36+
37+
public String getPhoto() {
38+
return photo;
39+
}
40+
41+
public String getEmail() {
42+
return email;
43+
}
44+
45+
public HashMap<String, Object> getTimestampJoined() {
46+
return timestampJoined;
47+
}
48+
}
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
package com.perusudroid.myapplication.model
1+
package com.perusudroid.exoplay.model
2+
3+
import java.io.Serializable
24

35
data class VideoListResponse(var thumb: String? = null,
46
var description: String? = null,
57
var id: Int? = null,
68
var title: String? = null,
7-
var url: String? = null)
9+
var url: String? = null) : Serializable

app/src/main/java/com/perusudroid/myapplication/presenter/BasePresenter.kt renamed to app/src/main/java/com/perusudroid/exoplay/presenter/BasePresenter.kt

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
package com.perusudroid.myapplication.presenter
1+
package com.perusudroid.exoplay.presenter
22

33
import android.os.Bundle
4-
import com.perusudroid.myapplication.presenter.ipresenter.IPresenter
5-
import com.perusudroid.myapplication.view.iview.IView
4+
import com.perusudroid.exoplay.presenter.ipresenter.IPresenter
5+
import com.perusudroid.exoplay.view.iview.IView
66

77

88
abstract class BasePresenter(iview: IView) : IPresenter {

0 commit comments

Comments
 (0)