Skip to content

Commit

Permalink
Merge pull request #135 from TeamCARDNA/refactor/after
Browse files Browse the repository at this point in the history
[DELETE] ActivityLifecycleCallbacks 삭제
  • Loading branch information
dabinKim-0318 authored Nov 15, 2022
2 parents a7c1f57 + dbf3f5e commit d93e27e
Show file tree
Hide file tree
Showing 12 changed files with 38 additions and 111 deletions.
2 changes: 1 addition & 1 deletion .idea/gradle.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

37 changes: 1 addition & 36 deletions app/src/main/java/org/cardna/CardNaApplication.kt
Original file line number Diff line number Diff line change
@@ -1,13 +1,9 @@
package org.cardna

//import com.google.firebase.FirebaseApp
import android.R.id
import android.app.Activity
import android.app.Application
import android.os.Bundle
import com.amplitude.api.Amplitude
import com.google.android.gms.tasks.OnCompleteListener
import com.google.firebase.analytics.FirebaseAnalytics
import com.google.firebase.messaging.FirebaseMessaging
import com.kakao.sdk.common.KakaoSdk
import com.navercorp.nid.NaverIdLoginSDK
Expand All @@ -19,10 +15,9 @@ import timber.log.Timber


@HiltAndroidApp
class CardNaApplication : Application(), Application.ActivityLifecycleCallbacks {
class CardNaApplication : Application() {
override fun onCreate() {
super.onCreate()
registerActivityLifecycleCallbacks(this)
initPixelUtil()
initLogger()
initKakaoLogin()
Expand All @@ -42,11 +37,6 @@ class CardNaApplication : Application(), Application.ActivityLifecycleCallbacks
})
}

override fun onTerminate() {
super.onTerminate()
unregisterActivityLifecycleCallbacks(this)
}

private fun initPixelUtil() {
pixelRatio = PixelRatio(this)
}
Expand Down Expand Up @@ -74,32 +64,7 @@ class CardNaApplication : Application(), Application.ActivityLifecycleCallbacks
Amplitude.getInstance().initialize(this, "00c76df54b75da7bd287245491b78c37").enableForegroundTracking(this)
}

override fun onActivityCreated(p0: Activity, p1: Bundle?) {
}

override fun onActivityStarted(p0: Activity) {
isBackground = false
}

override fun onActivityResumed(p0: Activity) {
isBackground = false
}

override fun onActivityPaused(p0: Activity) {
isBackground = true
}

override fun onActivityStopped(p0: Activity) {
}

override fun onActivitySaveInstanceState(p0: Activity, p1: Bundle) {
}

override fun onActivityDestroyed(p0: Activity) {
}

companion object {
lateinit var pixelRatio: PixelRatio
var isBackground = false
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ class FriendRequestAdapter(
.into(ivItemAlarmFriendRequestProfile)


//친구 메인뷰로 이동
root.setOnClickListener {
clickListener(data)
}
Expand All @@ -62,14 +61,14 @@ class FriendRequestAdapter(
}

override fun getItemCount() =
if (loadStatus) { //접힌 상태
if (loadStatus) {
if (AlarmActivity.DEFAULT_COUNT > currentList.size) {
currentList.size
} else {
AlarmActivity.DEFAULT_COUNT
}
} else {
currentList.size //펼친 상태라면 모든 아이템을 그린다
currentList.size
}


Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ class AlarmActivity : BaseViewUtil.BaseAppCompatActivity<ActivityAlarmBinding>(R
binding.tvAlarmFriendViewAll.text = VIEW_ALL
adapter.loadStatus = true
}
friendRequestAdapter.notifyDataSetChanged() //리스트 크기 매번 변경해야함으로 사용
friendRequestAdapter.notifyDataSetChanged()
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,12 @@ import android.os.Bundle
import android.view.View
import androidx.fragment.app.activityViewModels
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import com.amplitude.api.Amplitude
import dagger.hilt.android.AndroidEntryPoint
import org.cardna.R
import org.cardna.databinding.FragmentCardMeBinding
import org.cardna.presentation.MainActivity
import org.cardna.presentation.base.BaseViewUtil
import org.cardna.presentation.ui.cardpack.adapter.CardPackMeRecyclerViewAdapter
import org.cardna.presentation.ui.cardpack.viewmodel.CardPackViewModel
Expand Down Expand Up @@ -56,6 +58,7 @@ class CardMeFragment : BaseViewUtil.BaseFragment<FragmentCardMeBinding>(R.layout
rvCardme.adapter = cardMeAdapter
val gridLayoutManager = GridLayoutManager(requireContext(), 2)
rvCardme.layoutManager = gridLayoutManager

rvCardme.addItemDecoration(SpacesItemDecorationCardPack()) // 화면 비율 조정
rvCardme.layoutManager?.onSaveInstanceState()
rvCardme.smoothScrollToPosition(0)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import android.view.View
import androidx.databinding.DataBindingUtil
import androidx.fragment.app.Fragment
import androidx.fragment.app.activityViewModels
import androidx.recyclerview.widget.RecyclerView
import androidx.viewpager2.widget.ViewPager2
import com.amplitude.api.Amplitude
import com.google.android.material.tabs.TabLayoutMediator
Expand All @@ -26,6 +27,7 @@ class CardPackFragment :
private val cardPackViewModel: CardPackViewModel by activityViewModels()
private lateinit var cardPackTabLayoutAdapter: CardPackTabLayoutAdapter // tabLayout 에 data 띄워주는 adapter


override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,37 +40,30 @@ class CardShareActivity :
}

override fun initView() {
// intent 로 넘겨준 카드 이미지 세팅
setSrcWithGlide(intent.getStringExtra(BaseViewUtil.CARD_IMG)!!, binding.ivCardShareImg)

// intent 로 넘겨준 카드 title 세팅
binding.tvCardshareTitle.text = intent.getStringExtra(BaseViewUtil.CARD_TITLE)

// 카드나, 카드너에 따라
if (intent.getStringExtra(BaseViewUtil.IS_CARD_ME_OR_YOU) == "me") { // 카드나
// 배경색 설정
binding.ctlCardShareImage.setBackgroundResource(R.drawable.bg_cardme)

// ?? 님의 카드나 색, 내용 설정
binding.tvCardmeOrYou.setTextColor(ContextCompat.getColor(this, R.color.main_green))
if (CardNaRepository.userSocial == "naver") { // 네이버일 경우
if (CardNaRepository.userSocial == "naver") {
binding.tvCardmeOrYou.text = resources.getString(
R.string.cardshare_cardme,
CardNaRepository.naverUserfirstName
)
} else { // 카카오일 경우
} else {
binding.tvCardmeOrYou.text = resources.getString(
R.string.cardshare_cardme,
CardNaRepository.kakaoUserfirstName
)
}
} else { // 카드너
} else {
binding.ctlCardShareImage.setBackgroundResource(R.drawable.bg_cardyou)

// title 색 설정
binding.tvCardmeOrYou.setTextColor(ContextCompat.getColor(this, R.color.main_purple))

// ?? 님의 카드너
if (CardNaRepository.userSocial == "naver") {
binding.tvCardmeOrYou.text = resources.getString(
R.string.cardshare_cardyou,
Expand All @@ -88,29 +81,28 @@ class CardShareActivity :

fun setClickListener() {

// 저장하기 버튼 누르면
binding.ctlCardShareSave.setOnClickListener {
if (intent.getStringExtra(BaseViewUtil.IS_CARD_ME_OR_YOU) == "me") {
Amplitude.getInstance().logEvent("CardPack_Cardna_Share_Save")}
else{ Amplitude.getInstance().logEvent("CardPack_Cardner_Share_Save")}
Amplitude.getInstance().logEvent("CardPack_Cardna_Share_Save")
} else {
Amplitude.getInstance().logEvent("CardPack_Cardner_Share_Save")
}

// 카드 이미지 저장전, 저장하기 공유하기 글자 잠깐 없애기
binding.ctlCardShare.visibility = View.GONE
binding.ctlCardShareSave.visibility = View.GONE

// 이미지 저장 => 사진 이름 설정
saveCardImageToGallery(binding.ctlCardShareCapture, "cardna")

// 다시 보이도록
binding.ctlCardShare.visibility = View.VISIBLE
binding.ctlCardShareSave.visibility = View.VISIBLE
}

// 공유하기 버튼 누르면
binding.ctlCardShare.setOnClickListener {
if (intent.getStringExtra(BaseViewUtil.IS_CARD_ME_OR_YOU) == "me") {
Amplitude.getInstance().logEvent("CardPack_Cardna_Share_SNSShare")}
else{ Amplitude.getInstance().logEvent("CardPack_Cardner_Share_SNSShare")}
Amplitude.getInstance().logEvent("CardPack_Cardna_Share_SNSShare")
} else {
Amplitude.getInstance().logEvent("CardPack_Cardner_Share_SNSShare")
}
binding.ctlCardShare.visibility = View.GONE
binding.ctlCardShareSave.visibility = View.GONE

Expand All @@ -121,7 +113,7 @@ class CardShareActivity :

val cachePath = File(applicationContext.cacheDir, "images")

if (cachePath.exists().not()) { // 폴더 없으면 생성
if (cachePath.exists().not()) {
Timber.d("폴더 없음")
cachePath.mkdirs()
}
Expand All @@ -137,38 +129,17 @@ class CardShareActivity :
"org.cardna.fileprovider", newFile
)


val Sharing_intent = Intent(Intent.ACTION_SEND)
Sharing_intent.type = "image/png"
Sharing_intent.putExtra(Intent.EXTRA_STREAM, contentUri)
startActivity(Intent.createChooser(Sharing_intent, "Share image"))

// //view->bitmap: 공유하고싶은 이미지 ctl view를 bitmap으로 변환 후
// val bitmap = viewToBitmap(binding.ctlCardShareCapture)
//
// binding.ctlCardShare.visibility = View.VISIBLE
// binding.ctlCardShareSave.visibility = View.VISIBLE
//

// //bitmap->url
// val uri: Uri? = getImageUri(this, bitmap)
//
// //인텐트에 uri 넣어서 시작하기
// val shareIntent: Intent = Intent().apply {
// action = Intent.ACTION_SEND
// putExtra(Intent.EXTRA_STREAM, uri)
// type = "image/jpeg"
// }
// startActivity(Intent.createChooser(shareIntent, "CARDNA"))
}
}

// 카드 이미지 저장
private fun saveCardImageToGallery(view: View?, title: String) {
if (view == null) // NPE 방지
if (view == null)
return

// 원하는 뷰를 비트맵 이미지로 저장
val bitmap = viewToBitmap(view)

var fos: OutputStream? = null
Expand All @@ -178,7 +149,6 @@ class CardShareActivity :


this?.contentResolver?.also { resolver ->

val contentValues = ContentValues().apply {
put(
MediaStore.MediaColumns.DISPLAY_NAME,
Expand All @@ -188,31 +158,25 @@ class CardShareActivity :
put(MediaStore.MediaColumns.RELATIVE_PATH, "DCIM/CARDNA")
}

// 6
val imageUri: Uri? =
resolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, contentValues)

// 7
fos = imageUri?.let { resolver.openOutputStream(it) }

}
} else { // Android API Level Q 미만
Timber.d("Q 미만")

// 일단 권한을 요청해야함. 아니면 permission denied error 남
} else {
val writePermission = ActivityCompat.checkSelfPermission(
this,
android.Manifest.permission.WRITE_EXTERNAL_STORAGE
)

if (writePermission == PackageManager.PERMISSION_GRANTED) { // 권한 요청 받았을 때
// val externalStorage = getExternalFilesDir(DIRECTORY_PICTURES)!!.absolutePath
if (writePermission == PackageManager.PERMISSION_GRANTED) {
val externalStorage =
Environment.getExternalStorageDirectory().absolutePath // 외부저장소의 절대 경로 찾음
Environment.getExternalStorageDirectory().absolutePath
val path = "$externalStorage/CARDNA"
val dir = File(path)

if (dir.exists().not()) { // 폴더 없으면 생성 ?
if (dir.exists().not()) {
Timber.d("폴더 없음")
dir.mkdirs()
}
Expand All @@ -222,7 +186,6 @@ class CardShareActivity :
val fileItem = File("$dir/$filename")
fileItem.createNewFile()
fos = FileOutputStream(fileItem)
//파일 아웃풋 스트림 객체를 통해서 Bitmap 압축.
} catch (e: FileNotFoundException) {
e.printStackTrace()
} catch (e: IOException) {
Expand Down Expand Up @@ -250,7 +213,6 @@ class CardShareActivity :
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, it)
shortToast("사진이 저장되었습니다.")
}

fos?.close()
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ class MyPageFragment : BaseViewUtil.BaseFragment<FragmentMyPageBinding>(R.layout
MyPageViewModel.EXIST_QUERY -> myPageFriendAdapter.submitList(myPageViewModel.friendList.value?.reversed())//쿼리있는데 왔다가 온경우 ->업데이트 없어야함
MyPageViewModel.DEFAULT_STATE ->
myPageViewModel.friendList.observe(viewLifecycleOwner) { friendList ->
myPageFriendAdapter.submitList(friendList.reversed()) //가장 처음엔 운래 친구리스트
myPageFriendAdapter.submitList(friendList.reversed())
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -116,7 +116,7 @@ class MyPageViewModel @Inject constructor(
it.apply {
_myPage.value = it
_friendCount.value = friendList.size.toString()
_friendList.value = it.friendList //제일처음 친구 리스트
_friendList.value = it.friendList
if (_isInit.value == true) {
setQueryState(DEFAULT_STATE)
_isInit.value = false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ import javax.inject.Inject
class SettingViewModel @Inject constructor(
private val userRepository: UserRepository,
) : ViewModel() {

val click = MutableLiveData(1)
private val _pushAlarmOn = MutableLiveData(CardNaRepository.pushAlarmOn)
val pushAlarmOn: LiveData<Boolean> = _pushAlarmOn

Expand Down Expand Up @@ -115,7 +115,7 @@ class SettingViewModel @Inject constructor(
_etcContent.value = etcContent
}

fun deleteNaverUser(context: Context){
fun deleteNaverUser(context: Context) {
val deleteUserCallback = object : OAuthLoginCallback {
override fun onSuccess() {
Timber.d("naver 회원탈퇴 성공")
Expand Down Expand Up @@ -157,7 +157,12 @@ class SettingViewModel @Inject constructor(

viewModelScope.launch {
runCatching {
userRepository.deleteUser(RequestDeleteUserData(_secessionReasonList.value!!, _etcContent.value ?: ""))
userRepository.deleteUser(
RequestDeleteUserData(
_secessionReasonList.value!!,
_etcContent.value ?: ""
)
)
}.onSuccess {
CardNaRepository.apply {
if (userSocial == "kakao") {
Expand Down
Loading

0 comments on commit d93e27e

Please sign in to comment.