Skip to content

Commit

Permalink
Setup activities and DI ✨
Browse files Browse the repository at this point in the history
  • Loading branch information
andraantariksa committed Apr 3, 2022
1 parent 661d0a9 commit e03de99
Show file tree
Hide file tree
Showing 13 changed files with 101 additions and 9 deletions.
12 changes: 11 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
package="id.shaderboi.koffie">

<application
android:name=".KoffieApplication"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Koffie">
android:theme="@style/Theme.Koffie"
tools:replace="android:allowBackup">
<activity
android:name=".ui.main.MainActivity"
android:exported="true">
Expand All @@ -18,6 +21,13 @@
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ui.auth.AuthActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
</intent-filter>
</activity>
</application>

</manifest>
18 changes: 18 additions & 0 deletions app/src/main/kotlin/id/shaderboi/koffie/KoffieApplication.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package id.shaderboi.koffie

import android.app.Application
import dagger.hilt.android.HiltAndroidApp
import id.shaderboi.koffie.util.logger.ReleaseTree
import timber.log.Timber

@HiltAndroidApp
class KoffieApplication : Application() {
override fun onCreate() {
super.onCreate()
if (BuildConfig.DEBUG) {
Timber.plant(Timber.DebugTree())
} else {
Timber.plant(ReleaseTree())
}
}
}
16 changes: 16 additions & 0 deletions app/src/main/kotlin/id/shaderboi/koffie/di/AppModule.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package id.shaderboi.koffie.di

import com.google.firebase.auth.FirebaseAuth
import dagger.Module
import dagger.Provides
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton

@Module
@InstallIn(SingletonComponent::class)
object AppModule {
@Provides
@Singleton
fun provideFirebaseAuth(): FirebaseAuth = FirebaseAuth.getInstance()
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,13 @@
package id.shaderboi.koffie.ui.auth

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import dagger.hilt.android.AndroidEntryPoint

class AuthActivity: ActivityCompat() {
@AndroidEntryPoint
class AuthActivity: AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package id.shaderboi.koffie.ui.auth

import androidx.fragment.app.Fragment
import dagger.hilt.android.AndroidEntryPoint

@AndroidEntryPoint
class SignInFragment: Fragment() {
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package id.shaderboi.koffie.ui.auth

import androidx.fragment.app.Fragment
import dagger.hilt.android.AndroidEntryPoint

@AndroidEntryPoint
class VerifyPhoneFragment: Fragment() {
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ package id.shaderboi.koffie.ui.main

import androidx.fragment.app.Fragment
import dagger.hilt.EntryPoint
import dagger.hilt.android.AndroidEntryPoint

@EntryPoint
@AndroidEntryPoint
class HomeFragment: Fragment() {
}
17 changes: 16 additions & 1 deletion app/src/main/kotlin/id/shaderboi/koffie/ui/main/MainActivity.kt
Original file line number Diff line number Diff line change
@@ -1,27 +1,42 @@
package id.shaderboi.koffie.ui.main

import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import androidx.activity.viewModels
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
import com.google.firebase.auth.FirebaseAuth
import dagger.hilt.EntryPoint
import dagger.hilt.android.AndroidEntryPoint
import id.shaderboi.koffie.databinding.ActivityMainBinding
import id.shaderboi.koffie.ui.auth.AuthActivity
import id.shaderboi.koffie.ui.main.view_model.MainViewModel
import javax.inject.Inject

@EntryPoint
@AndroidEntryPoint
class MainActivity : AppCompatActivity() {
private var _binding: ActivityMainBinding? = null
val binding get() = _binding!!

private val mainViewModel by viewModels<MainViewModel>()

@Inject
lateinit var firebaseAuth: FirebaseAuth

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)

installSplashScreen().setKeepOnScreenCondition {
true
}

if (firebaseAuth.currentUser == null) {
val intent = Intent(this, AuthActivity::class.java)
intent.flags = Intent.FLAG_ACTIVITY_CLEAR_TASK or Intent.FLAG_ACTIVITY_NEW_TASK
startActivity(intent)
return
}

_binding = ActivityMainBinding.inflate(layoutInflater)

setContentView(binding.root)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,10 @@ package id.shaderboi.koffie.ui.main
import android.os.Bundle
import androidx.preference.PreferenceFragmentCompat
import dagger.hilt.EntryPoint
import dagger.hilt.android.AndroidEntryPoint
import id.shaderboi.koffie.R

@EntryPoint
@AndroidEntryPoint
class PreferenceFragment: PreferenceFragmentCompat() {
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
setPreferencesFromResource(R.xml.profile_preference, "profile")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@ package id.shaderboi.koffie.ui.main

import androidx.fragment.app.Fragment
import dagger.hilt.EntryPoint
import dagger.hilt.android.AndroidEntryPoint

@EntryPoint
@AndroidEntryPoint
class ProfileFragment: Fragment() {
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
package id.shaderboi.koffie.ui.product

import androidx.appcompat.app.AppCompatActivity
import androidx.core.app.ActivityCompat
import androidx.fragment.app.Fragment
import dagger.hilt.android.AndroidEntryPoint

class ProductActivity: ActivityCompat() {
@AndroidEntryPoint
class ProductActivity: AppCompatActivity() {
}
16 changes: 16 additions & 0 deletions app/src/main/kotlin/id/shaderboi/koffie/util/logger/ReleaseTree.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
package id.shaderboi.koffie.util.logger

import android.util.Log
import com.google.firebase.crashlytics.ktx.crashlytics
import com.google.firebase.ktx.Firebase
import timber.log.Timber

class ReleaseTree: Timber.Tree() {
override fun log(priority: Int, tag: String?, message: String, t: Throwable?) {
if (priority < Log.INFO) {
return
}

Firebase.crashlytics.log(message)
}
}
4 changes: 2 additions & 2 deletions app/src/main/res/layout/activity_cart.xml
Original file line number Diff line number Diff line change
Expand Up @@ -56,11 +56,11 @@
android:showDividers="middle">

<include
android:id="includeItemProductsPrice"
android:id="@+id/includeItemProductsPrice"
layout="@layout/item_price" />

<include
android:id="includeItemDeliveryFee"
android:id="@+id/includeItemDeliveryFee"
layout="@layout/item_price" />

<com.google.android.flexbox.FlexboxLayout
Expand Down

0 comments on commit e03de99

Please sign in to comment.