일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- onReceivedSslError
- notification bar
- circlecrop
- onResume
- 403 Error
- prettyJson
- Android
- navigation component
- requestPermission
- Blinking
- ChromeCustomTab
- jsontokotlinclass
- webview
- datastore
- kdoc-generator
- application
- ExifInterface
- room
- 이미지 gps
- notification
- Git
- LOG
- shotcut
- skipcollapsed
- Plugins
- BottomSheetDialog
- ActivityResultContracts
- itemAnimator
- App Startup
- notification setting
- Today
- Total
목록안드로이드/Tip (19)
Debbi Story
앱 알림 설정 화면으로 이동하는 방법이 Oreo 버전 이상 이하 버전 다르게 처리해 주어야 합니다! fun presentNotificationSetting(context: Context) { val intent = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { notificationSettingOreo(context) } else { notificationSettingOreoLess(context) } try { context.startActivity(intent) }catch (e: ActivityNotFoundException) { e.printStackTrace() } } @RequiresApi(Build.VERSION_CODES.O) fun not..
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { val channel = NotificationChannel(channelData.id, channelData.name, NotificationManager.IMPORTANCE_DEFAULT) channel.enableVibration(true) channel.setShowBadge(true) notificationManager.createNotificationChannel(channel) }else { Intent("android.intent.action.BADGE_COUNT_UPDATE") .putExtra("badge_count", count) .putExtra("badge_count_package_na..
안녕하세요. 카메라앱 설정에서 위치 태그를 설정해두면 사진 촬영시 위치 정보가 같이 저장되는데 이미지의 meta 정보중에서 위치 gps 값을 가져오는 방법을 소개합니다. https://developer.android.com/reference/androidx/exifinterface/media/ExifInterface ExifInterface | Android Developers ExifInterface public class ExifInterface extends Object java.lang.Object ↳ androidx.exifinterface.media.ExifInterface This is a class for reading and writing Exif tags in various image ..
fun ImageView.loadCircularImage( model: T, borderSize: Float = 0F, borderColor: Int = Color.WHITE ) { Glide.with(context) .asBitmap() .load(model) .apply(RequestOptions.circleCropTransform()) .into(object : BitmapImageViewTarget(this) { override fun setResource(resource: Bitmap?) { setImageDrawable( resource?.run { RoundedBitmapDrawableFactory.create( resources, if (borderSize > 0) { createBitma..
https://developer.android.com/guide/navigation/navigation-pass-data#supported_argument_types 위에 공식 문서에서 data를 전달 할 수 있는 타입을 확인하시고 이런식으로 data를 전달 받을 fragment에 argument 태그로 추가해줍니다. 사용자정의 타입도 전달 할 수 있고 Array타입으로도 넘길 수 있습니다. @Parcelize data class UserInfo( val name: String, val age: Int ): Parcelable 사용자정의 타입을 사용할 경우 Parcelable나 Serializable를 구현해야 합니다. 이전에는 Parcelable를 구현하려면 코드가길어지고 복잡했지만 @Parcelize..
일반적인 notification은 swipe시 사라지지만 swipe해도 사라지지 않고 계속 고정으로 떠있는 커스텀 notification은 만들어 보겠습니다. val contentIntent = Intent(context, MainActivity::class.java) contentIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK) val contentPendingIntent = PendingIntent.getActivity( context, 123, contentIntent, PendingIntent.FLAG_UPDATE_CURRENT ) val refreshIntent = Intent(context, Noti..
developer.android.com/training/data-storage/room/accessing-data?hl=ko Room DAO를 사용하여 데이터 액세스 | Android 개발자 | Android Developers Room 라이브러리의 일부인 DAO(데이터 액세스 개체)를 사용하여 데이터베이스 테이블을 수정하는 방법 알아보기 developer.android.com Room 데이터베이스에 Insert 했을때 rowId를 반환 받을 수 있는데요. @Insert(onConflict = OnConflictStrategy.REPLACE) suspend fun insertTask(task: TodoEntity): Long return값을 Long 타입으로 해주시면 됩니다. 참고로 onConflict는..