일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- swift autolayout
- 안드로이드 바로가기
- 푸시 데이터 저장
- 안드로이드 에러
- 안드로이드 앨범
- silent push
- swift 문자
- NotificationService Extension
- 스위프트 UserDefaults
- swift sms
- Swift flutterview
- FlutterView MethodChannel
- 스위프트 카메라
- 노티피케이션 익스텐션
- 스위프트 테이블 뷰 셀
- 스위프트 웹뷰
- 안드로이드 숏컷
- 앱 꺼졌을 때 푸시 데이터 저장
- flutter rotate
- Flutter UIKitView MethodChannel
- native flutter view
- Flutter NativeView
- 앱 백그라운드 푸시 데이터 저장
- Swift flutterviewcontroller
- 스위프트 앨범
- 안드로이드 FCM
- flutter 회전
- 스위프트 푸시
- 스위프트
- 플러터 뷰 컨트롤러
- Today
- Total
목록Study (178)
Things take time
[웹뷰] 말 그대로 웹 페이지를 보여주는 뷰, 안드로이드의 컴포넌트중 하나다. 안드로이드가 iOS에 비해 웹뷰가 좋은 이유는.. 웹뷰의 종류가 기본형 하나이기 때문일 것이다. iOS는 UIWebView라고 있지만, WKWebView라고 좀 더 진보된 웹뷰를 권장하는데, 이 웹뷰가 기본형이 아니라서 import를 하고 그런 작업들이 있기 때문이다. 그렇기에 처음 접하는 사람에겐 iOS가 귀찮다. 어쨌든, 앱의 기본이 웹페이지를 띄워주는 것이고.. 여기에 플레이스토어에 출시하기 위한 껍데기, 네이티브의 기능을 덧붙여주면 하이브리드앱이 된다. 물론, 웹이 주가 아니라 네이티브가 주면서 웹은 거드는 것도 하이브리드 앱이라 할 수 있다. 정의를 굳이 딱 정하려 하기 보다는 네이티브의 기능(카메라, 지도 등)과 웹..
[새로고침] 안드로이드에서 새로고침을 하는 방법은 간단하다. Webview.reload()이 함수인데, 새로고침을 위해 버튼을 하단에 생성하여 연결하는 경우가 많은데.. 이 경우 말고, 화면을 아래로 드래그했을 때.. 즉 웹뷰 내 스크롤 Y값이 0일 때 이 새로고침을 수행하게 하면 되는 것이다. [준비] 이 새로고침을 사용하는 가장 기본히 되는 레이아웃이 있다. SwipeRefreshLayout이란 것인데 말 그대로 새로고침을 위한 레이아웃이랄까.레이아웃 파일에서 웹뷰를 감싸는 뷰로 이 스와이프 리프레쉬 레이아웃을 사용한다. 그리고 액티비티 클래스파일에서는 import android.app.DownloadManager; import android.content.Intent; import android.n..
[문자 수신] 회원가입을 진행하다보면.. 핸드폰을 인증하고, 핸드폰에 인증문자가 오면 그 문자를 외웠다가 해당 칸에 입력하는 곳도 있지만, 자동적으로 그 번호를 입력해주는 앱들이 있다. 이 기능을 구현하는 예제다. [로직] 문자를 수신하는 브로드캐스트 리시버(앱의 백그라운드에서 동작하는 것을 관리)에서 여러 브로드캐스트 중 '문자'에 대한 액션만을 캐치하여, 해당 문자내용을 분석하여 서버의 번호로 등록된 곳을 통해 문자가 왔다면, 그 문자 내용중 인증 번호를 추출하여 네이티브 앱에서 자동 입력하는 함수를 호출한다. 참고로 이 브로드캐스트는 이 브로드캐스트를 등록한 앱이 실행중일 때만 동작한다는 것을 잊지 말자. 앱이 켜지지 않았는데도 동작하는 것을 원하는것은 브로드캐스트가 아닌 서비스! (예 : 푸시) ..
[코드] Intent badgeIntent = new Intent("android.intent.action.BADGE_COUNT_UPDATE"); badgeIntent.putExtra("badge_count", badgeCount); badgeIntent.putExtra("badge_count_package_name", getPackageName()); badgeIntent.putExtra("badge_count_class_name", getLauncherClassName()); sendBroadcast(badgeIntent); 카메라, 앨범을 호출하는 것처럼 상수 값인 인텐트 액션 값을 주면 된다.여기서 badgeCount는 당연히 int값이며 getPackageName()은 현재 패키지명을 가져오는 ..