Skip to content
Snippets Groups Projects
Commit c700488d authored by DR's avatar DR
Browse files
parents b9b25bff abba33eb
Branches
Tags
No related merge requests found
......@@ -10,14 +10,12 @@
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
<uses-permission
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
tools:ignore="ScopedStorage" />
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<application
android:allowBackup="true"
......@@ -29,6 +27,16 @@
android:supportsRtl="true"
android:theme="@style/Theme.BondoMan"
tools:targetApi="31">
<receiver
android:name=".data.util.TransactionReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="com.sleepee.bondoman.addTransaction">
</action>
</intent-filter>
</receiver>
<activity
android:name=".presentation.activity.LoginActivity"
......@@ -46,12 +54,14 @@
android:name=".presentation.activity.AddTransactionActivity"
android:parentActivityName=".presentation.activity.MainActivity"
tools:ignore="Instantiatable" />
<activity android:name=".presentation.activity.EditTransactionActivity"
<activity
android:name=".presentation.activity.EditTransactionActivity"
android:parentActivityName=".presentation.activity.MainActivity"
tools:ignore="Instantiatable"/>
<activity android:name=".presentation.activity.RetakeTwibbonActivity"
tools:ignore="Instantiatable" />
<activity
android:name=".presentation.activity.RetakeTwibbonActivity"
android:parentActivityName=".presentation.activity.MainActivity"
tools:ignore="Instantiatable"/>
tools:ignore="Instantiatable" />
<meta-data
android:name="com.google.android.geo.API_KEY"
......
package com.sleepee.bondoman.data.util
import android.content.Context
object CredentialManager {
private const val PREF_NAME = "com.sleepee.bondoman.prefs"
private const val EMAIL_TOKEN = "email"
fun getEmail(context: Context): String? {
val sharedPref = context.getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
return sharedPref.getString(EMAIL_TOKEN, null)
}
fun storeEmail(context: Context, email: String) {
val sharedPref = context.getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
with (sharedPref.edit()) {
putString(EMAIL_TOKEN, email)
apply()
}
}
}
\ No newline at end of file
package com.sleepee.bondoman.data.util
import android.content.BroadcastReceiver
import android.content.Context
import android.content.Intent
import android.util.Log
class TransactionReceiver : BroadcastReceiver() {
override fun onReceive(context: Context, intent: Intent) {
println(intent.action.toString())
println(intent.getStringExtra("title"))
}
}
\ No newline at end of file
......@@ -14,6 +14,7 @@ import androidx.lifecycle.lifecycleScope
import androidx.work.OneTimeWorkRequestBuilder
import androidx.work.WorkManager
import com.sleepee.bondoman.data.model.LoginRequest
import com.sleepee.bondoman.data.util.CredentialManager
import com.sleepee.bondoman.data.util.TokenManager
import com.sleepee.bondoman.network.api.LoginApiService
import com.sleepee.bondoman.network.api.RetrofitClient
......@@ -128,7 +129,8 @@ class LoginActivity : AppCompatActivity(), NoConnectivityDialogFragment.Connecti
if (res != null && res.isSuccessful && res.body() != null){
val token = res.body()!!.token
NetworkUtils.encrypt(token)?.let { TokenManager.storeToken(it) }
TokenManager.storeToken(token)
CredentialManager.storeEmail(applicationContext, email)
Log.d("LoginActivity", "Login success with token $token")
startJWTBackgroundService()
......
package com.sleepee.bondoman.presentation.activity
import android.content.Intent
import android.content.IntentFilter
import android.os.Build
import android.os.Bundle
import android.view.Menu
import android.view.MenuItem
import androidx.activity.OnBackPressedCallback
import androidx.annotation.RequiresApi
import androidx.core.content.ContextCompat
import androidx.fragment.app.commit
import com.google.android.material.navigation.NavigationBarView
import com.sleepee.bondoman.R
import com.sleepee.bondoman.data.util.TokenManager
import com.sleepee.bondoman.data.util.TransactionReceiver
import com.sleepee.bondoman.databinding.ActivityMainBinding
import com.sleepee.bondoman.presentation.fragment.GraphFragment
import com.sleepee.bondoman.presentation.fragment.ScanFragment
......@@ -17,9 +23,15 @@ import com.sleepee.bondoman.presentation.fragment.TwibbonFragment
class MainActivity : BaseActivity(), NavigationBarView.OnItemSelectedListener {
private lateinit var binding: ActivityMainBinding
private val transactionReceiver = TransactionReceiver()
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val filter = IntentFilter("com.sleepee.bondoman.addTransaction")
registerReceiver(transactionReceiver, filter, RECEIVER_EXPORTED)
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.root)
......@@ -96,4 +108,9 @@ class MainActivity : BaseActivity(), NavigationBarView.OnItemSelectedListener {
}
}
}
override fun onDestroy() {
super.onDestroy()
unregisterReceiver(transactionReceiver)
}
}
\ No newline at end of file
package com.sleepee.bondoman.presentation.fragment
import android.content.Intent
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Button
import android.widget.Toast
import androidx.fragment.app.Fragment
import com.sleepee.bondoman.databinding.FragmentSettingsBinding
......@@ -45,7 +47,12 @@ class SettingsFragment: Fragment() {
}
acakButton.setOnClickListener {
// TO DO Implement
Intent().also { intent ->
intent.setAction("com.sleepee.bondoman.addTransaction")
intent.putExtra("title", "Beli Geprek")
context?.sendBroadcast(intent)
}
Toast.makeText(requireContext(), "Randomized transaction has been broadcasted", Toast.LENGTH_SHORT).show()
}
keluarButton.setOnClickListener{
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment