@@ -2,7 +2,9 @@ package org.three.minutes.home.ui
22
33import android.annotation.SuppressLint
44import android.app.Dialog
5+ import android.content.ActivityNotFoundException
56import android.content.Intent
7+ import android.net.Uri
68import androidx.appcompat.app.AppCompatActivity
79import android.os.Bundle
810import android.util.Log
@@ -19,6 +21,7 @@ import androidx.viewpager.widget.ViewPager
1921import kotlinx.android.synthetic.main.activity_home.*
2022import kotlinx.android.synthetic.main.home_navigation.view.*
2123import kotlinx.coroutines.*
24+ import min.dev.singleclick.mingSingleClickListener
2225import org.three.minutes.LogOutPopUp
2326import org.three.minutes.R
2427import org.three.minutes.ThreeApplication
@@ -55,6 +58,8 @@ class HomeActivity : AppCompatActivity(), CoroutineScope {
5558
5659 private val PROFILE_CODE = 100
5760
61+ private var closeTime: Long = 0
62+
5863 override fun onCreate (savedInstanceState : Bundle ? ) {
5964 super .onCreate(savedInstanceState)
6065 Log .e(" Home" , " HomeActivity onCreate()" )
@@ -201,6 +206,11 @@ class HomeActivity : AppCompatActivity(), CoroutineScope {
201206 }
202207 startActivityForResult(intent,3000 )
203208 }
209+
210+ // 생글 인스타그램 페이지로 이동
211+ mBinding.homeDrawer.navi_go_to_instagram.mingSingleClickListener {
212+ goToInstagram()
213+ }
204214 }
205215
206216
@@ -242,12 +252,32 @@ class HomeActivity : AppCompatActivity(), CoroutineScope {
242252 mBinding.swipe.isEnabled = isEnable
243253 }
244254
255+ private fun goToInstagram () {
256+ val instagramPageID = " sangle_official/"
257+ val uri = Uri .parse(" https://instagram.com/_u/$instagramPageID " )
258+
259+ val instagramIntent = Intent (Intent .ACTION_VIEW , uri).apply {
260+ `package` = " com.instagram.android"
261+ }
262+
263+ try {
264+ startActivity(instagramIntent)
265+ } catch (e: ActivityNotFoundException ) {
266+ e.printStackTrace()
267+ startActivity(Intent (Intent .ACTION_VIEW , uri))
268+ }
269+ }
270+
245271 override fun onBackPressed () {
246272 if (mBinding.homeDrawer.isDrawerOpen(GravityCompat .START )) {
247273 mBinding.homeDrawer.closeDrawer(GravityCompat .START )
248274 } else {
249- super .onBackPressed()
250- ActivityCompat .finishAffinity(this )
275+ if (System .currentTimeMillis() <= closeTime + 2000 ) {
276+ ActivityCompat .finishAffinity(this )
277+ } else {
278+ showToast(" '뒤로'버튼을 한번 더 누르시면 앱이 종료됩니다." )
279+ closeTime = System .currentTimeMillis()
280+ }
251281 }
252282 }
253283
0 commit comments