일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Crash
- Xcode
- 암호화폐
- ethereum
- 백준
- ios
- solidity
- Algorithm
- POS
- 알고리즘
- External Call
- Report
- 분산원장
- viewcontroller
- DPOS
- 이더리움
- view 이동
- Blockchain
- .dsym
- PBFT
- reentrancy
- 블록체인 기술
- pow
- 재진입공격
- dsYM
- Mining
- 비트코인
- 블록체인
- DEFI
- 프로그래머스
- Today
- Total
목록iOS/Development (11)
개발하기좋은날

기호화된 Crash Report 파일은 복호화한다면 정확한 에러 위치를 확인 할 수도 있다 복호화 하기위해서는 4가지 종류의 파일이 필요하다 .dsym 파일 symbolicatedcrash .app 파일 .crash 절차는 아래와 같다 1. Crash Report 확장자 crash.txt -> crash.crash 형태로 변경 한다 2. symbolicated 폴더를 만든다 3. crash.crash 파일을 copy symbolicated 폴더에 paste 4. Crash 발생한 Xcode 프로젝트를 열고 xcode -> window -> orgnizer 또는 xcode -> product -> Archive 이동 5. Crash 발생한 빌드를 선택하고 "우 클릭" -> "Show in the Finde..
ViewConroller 를 제거하는건 쉽다 self.dismiss(animated: false, completion: nil) ViewController에서는 view는 스택으로 쌓이게된다 그리고 여러 view 중 rootView 가 존재한다 rootView는 제거가 되지않는 뷰로 이걸 이용해서 몇가지 응용이 가능하다 일단 처음 어플리케이션을 시작을 하게되면 시작되는 ViewController 가 rootViewController 된다 (예를들어 스토리 보드에서 "->" 표시를 가지고있으면 rootView가 될수있다) 1. rootView 를 다른 ViewController로 지정하기 2. rootView를 뺴고 다른 ViewController 제거하기 rootView를 지정하는법은 두가지가 있다 //..

ViewController 사이 6가지 전송 방법이 있다 property (A -> B) segue (A -> B) property와 함수 (A A(xib) 로 이동할떄 // M class ViewController: UIViewController { @IBAction func nextButton(_ sender: Any) { // 이동할 xib 컨트롤러 변수를 생성하고 해당 컨트롤러 프로퍼티 변수를 초기화 한다음 present로 호출 let vc = xib_AController(nibName: "xib_AController", bundle: nil) vc.tmpInt = 1 self.present(vc, animated: true, completion: nil) } } - 결과 버튼을 클릭했을때 xib..
// 추가할 서브뷰를 생성 var imageView:UIImageView? // 서브 view 를 식별할 태그를 지정 imageView?.tag=100 // 서브 뷰를 불러오고 let viewWithTag = self.view.viewWithTag(100) // 해당 뷰를 제거한다 viewWithTag.removeFromSuperview()
- 안드로이드에 SharedPreferences 똑같은 매커니즘이다 - 사용처와 특징 앱이 설치된 이후부터 앱이 실행되고 종료되어도 계속 유지가 되어야하는 정보와 데이터 앱이 삭제되면 데이터가 날라가는 경우 Key는 String만 사용 가능하고, 저장할 수 있는 값은 Int, Double, Float, String, Bool, Data와, 이로 이루어진 Array, Dictionary만 가능 ** 커스텀 클래스로 데이터를 저장하고 싶으면 NSKeyedArchiever 등을 사용하여 전환한뒤 저장해야함 *** - 사용법 //String 키 사용 let strKey_1 = "str1" let strKey_2 = "str2" let strKey_3 = "str3" //저장 UserDefaults.standar..

안드로이드 개발에서 사용하면 알람창 아이폰에서는 아래와 같은 모습을 한다 (왼쪽 : ActionSheet, 오른쪽 : Alert) 1. ActionSheet - ActionSheet ViewController 생성후 Action을 생성하여 Present 호출 하면됨 - style 옵션에 .destructive .cancle .default 3가지 타입이있고 버튼 형태가 달라지니 기호에 맞게 사용하면된다 let actionSheetController = UIAlertController(title: "전화번호 수집 동의", message: "파트너 인증을 위하여 휴대폰 번호를 수집 합니다", preferredStyle: .actionSheet) // 동의 액션 let actionDefault = UIAler..

Provisioning Profiles +버튼 클릭 iOS App Destribution (xcode에서 debug용)과 Ad Hoc (내부 테스터에게 배포용) 각각 체크하여 생성 AppID에서 적용할 앱 선택 Certificate 선택 적용할 테스터 디바이스 선택 Name입력 후 Generate Name은 주로 "dev_appName", "adhoc_appName"이런 식으로 작성 Download 저장 download 된 파일들Xcode에 위에서 받은 Provisioning Profile 등록 Automatically manage signing 해제 Debug, Release 각각 import Profile하여 위에서 받은 Provisioning Profile 등록 (debug - Development..