Mobile 15

[Flutter] 안드로이드 스튜디오 ios emulator 빈 화면 해결 - blank white screen 오류

flutter 및 앱 개발 초보인 저는 flutter 프로젝트를 최초 생성후 ios emulator 로 앱 실행을 해보았었는데, 그땐 잘 나왔는데 어느날 한참 후 다시 실행을 시켜보니 화면이 그냥 하얗게만 나왔습니다. 당황했지만, 구글링을 해보며 언제나 그렇듯 해결책을 찾아 봅니다. 혹시나 다시 xcode 관련 설정이 안된게 있나 확인하려고 flutter doctor를 실행해보았지만, 다 정상이네요 flutter clean (시간이 조금..걸립니다.) 을 해보고 다시 에뮬레이터를 시작 후 앱 실행을 해줍니다. flutter clean 작업시에는 무슨일을 하는지 간단히 나오네요. 짜잔, flutter clean을 한번 해주고 나니 정상적으로 화면이 떴네요 flutter github issues에도 blan..

[Android Studio] Emulator 새창으로 띄우기 - Emulator Launch in tool window

Android Studio에서 Emulator를 이용해서 개발하다 보면 Emulator가 새창에서 실행이 될때가 있는데, 항상 새창에서 실행되게 하는 방법입니다. 처음에 아무 Emulator 기본설정은 하지 않으면 아래 화면처럼 답답하게 나오죠. 제가 원하는 모습은 아래 화면처럼 Emulator가 단독으로 실행되는것처럼 떠있는 상태입니다. (Standalone application 으로 떠 있는 화면) 기본 View Mode가 Dock Pinned 로 되어있습니다. 여기서 Float 도 해보고, Window를 선택해봤지만 원하는 모습이 아니었습니다. View Mode : Float 로 설정 해결 Android Studio -> Preference -> Tools -> Emulator 를 선택후, 오른쪽에..

[Kotlin] 코틀린 값 비교 - Equality Checks

Kotlin에서 == 연산자는 값이 같은지 비교하고, === 연산자는 참조값이 같은지 비교하는데 사용합니다. a == b 처럼 쓰면 아래처럼 컴파일 됩니다. if (a == null) b == null else a.equals(b) 아래 초 간단 예제를 봅니다. set, list 모두 동일한 결과이고 == 는 순서에 상관없이 set에 값이 같으면 true, === 는 객체 자체가 같은지 비교하니까 false로 나옵니다. list는 == 은 값의 순서가 같아야지 true, === 는 다른 객체니까 false로 나옵니다. fun main() { val book1 = setOf("book1","book2") val book2 = setOf("book1","book2") println(book1 == book2..

[Flutter] 안드로이드 스튜디오 AVD 에뮬레이터 실행 오류 - Android Virtual Device Error launching application on sdk gphone64 arm64.

이제 막 Flutter 입문하여 만지작 거리던 중 오류를 만났습니다. 1일 1오류를 겪고 있습니다. 코드넣는시간보다 오류해결하는 시간이 많지만 이겨내보겠습니다. 안드로이드 스튜디오에서 에뮬레이터를 실행하여 앱을 띄울려고 하니 아래와 같은 에러를 만났습니다. 오류내용 Launching lib/main.dart on sdk gphone64 arm64 in debug mode... Running Gradle task 'assembleDebug'... F/RenderEngine(27100): Unable to generate SkImage. isTextureValid:1 dataspace:513 F/RenderEngine(27206): Unable to generate SkImage. isTextureValid..

[Flutter] Andriod Studio Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE] 오류 해결

Android Studio 에서 Emulator를 이용해서 run 실행을 했을때 오류가 발생했을때 해결방법을 알아본다. adb: failed to install /Users/buri/dev/project-toy/positive/build/app/outputs/flutter-apk/app.apk: Failure [INSTALL_FAILED_INSUFFICIENT_STORAGE] 오류 내용 Launching lib/main.dart on sdk gphone64 arm64 in debug mode... Running Gradle task 'assembleDebug'... ✓ Built build/app/outputs/flutter-apk/app-debug.apk. Installing build/app/outp..

[Flutter] Android Studio 프로젝트 생성 및 앱 실행

Android Studio 2021.2.1 Patch 2버전 기준 flutter plugin 설치되어있어야 한다. 설치되어있지 않다면 설치! 설치 후 재시작을 해주면 Projects > New Flutter Project 가 생겼다. Flutter > New Project에 설치한 Flutter SDK의 경로를 선택해준다. Project 이름, 위치, 패키지명을 원하는대로 입력해준다. 프로젝트 생성 완료! main.dart 파일에 예제로 코드가 미리 입력되어있는 것을 볼 수 있다. 앱 실행을 위해 오른쪽 상단에 원하는 디바이스 Simulator를 선택해도 되고, 간단하게 Chrome(Web) 으로 띄워보겠다. 앱 실행 화면 오른쪽 하단의 + 버튼을 누르면 누른만큼 숫자가 카운팅되서 증가하는 예제이다.

[ios] iphone 무선 디버깅 연결하기

iphone app 개발시, USB 쓰기 귀찮으니까 무선으로 연결해보자! 아주 간단!!블로깅하는게 더 오래걸리는... 하지만, Xcode 9에서 새로 지원된 기능인 만큼.Xcode 9 이상, iOS 11 이상에서만 지원한다. Xcode > WindowDevices and Simulators 를 선택. Devices 탭에 connect via network 선택이 기본으로 선택해제 되어 있으니, 체크 해주고 나오면 끝! 빌드해서 실행해보자!

Mobile/ios & swift 2018.07.02

[ios] iPhone is busy. Preparing debugger support for 에러 문구

swift 문법을 처음으로 공부하고 나의 첫 앱을 시뮬레이터에서만 보다가 내 iphone 에서 보려고 설정중에,아래와 같은 문구가 한참을 나오고 사라지지 않았다. 해결방법 Xcode > Window Devices and Simulators를 선택 Devices 창에 아래와 같은 화면이 노출된다. 여전히 iPhone is busy... 라는 문구를 볼 수 있다. 왼쪽 하단의 아래 + 버튼을 눌러주고 현재 연결되어있는 iPhone 을 선택 후 Next 버튼을 클릭! Done 버튼을 누르고, 여전히 문구가 사라지지 않는다면 USB 연결되어있다면 다시 재연결해보자!

Mobile/ios & swift 2018.07.01

[Swift 4] 타입 캐스팅 (Type Casting)

이 포스팅은 The Swift Programming Language (Swift 4.1) 의 Type Casting 문서를 보고 이해하며 제 것으로 만들면서 정리해 놓은 문서입니다. 원문 https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/TypeCasting.html#//apple_ref/doc/uid/TP40014097-CH22-ID338 타입 캐스팅(Type Casting) 타입 캐스팅은 인스턴스의 타입을 체크하거나 해당 인스턴스를 고유한 클래스 계층 구조의 다른 수퍼 클래스나 서브 클래스로 처리하는 방법이다. Swift에서의 타입 캐스팅은 is와 as 연산자로 구현된다..

Mobile/ios & swift 2018.04.08

[Swift 4] Optional Chaining(4) - 옵셔널 체이닝을 이용하여 서브스크립트 접근하기

이 포스팅은 The Swift Programming Language (Swift 4.1) 의 Optional Chaining 문서를 보고 이해하며 제 것으로 만들면서 정리해 놓은 문서입니다. 원문 https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html#//apple_ref/doc/uid/TP40014097-CH21-ID245 옵셔널 체이닝을 이용하여 서브스크립트 접근하기(Accessing Subscripts Through Optional Chaining) 옵셔널 값의 서브스크립트로부터 값을 가져오거나 설정하기 위해, 옵셔널 체이닝을 사용 할..

Mobile/ios & swift 2018.03.20

[Swift 4] Optional Chaining(3) - 옵셔널 체이닝을 이용하여 메소드 호출하기

이 포스팅은 The Swift Programming Language (Swift 4.1) 의 Optional Chaining 문서를 보고 이해하며 제 것으로 만들면서 정리해 놓은 문서입니다. 원문 https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html#//apple_ref/doc/uid/TP40014097-CH21-ID245 옵셔널 체이닝을 이용하여 메소드 호출하기(Calling Methods Through Optional Chaining) 옵셔널 체이닝으로 옵셔널 값에서 메소드 호출하고, 메소드 호출이 성공하는지 확인 할 수 있다. 리턴 ..

Mobile/ios & swift 2018.03.20

[Swift 4] Optional Chaining(2) - 옵셔널 체이닝을 이용하여 프로퍼티 접근하기

이 포스팅은 The Swift Programming Language (Swift 4.1) 의 Optional Chaining 문서를 보고 이해하며 제 것으로 만들면서 정리해 놓은 문서입니다. 원문 https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html#//apple_ref/doc/uid/TP40014097-CH21-ID245 옵셔널 체이닝을 위한 모델 클래스 정의하기 옵셔널 체이닝을 사용하여, 한 단계 이상의 레벨에 해당하는 프로퍼티, 메소드, 서브스크립트 호출하여 사용 할 수 있다. 상호 관련된 타입의 복잡한 모델내에서 서브프로퍼티로 내려..

Mobile/ios & swift 2018.03.19

[Swift 4] Optional Chaining(1) - 강제 언래핑 대안으로서의 옵셔널 체이닝

이 포스팅은 The Swift Programming Language (Swift 4.1) 의 Optional Chaining 문서를 보고 이해하며 제 것으로 만들면서 정리해 놓은 문서입니다. 원문 https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html#//apple_ref/doc/uid/TP40014097-CH21-ID245 Optional Chaining옵셔널 체이닝(Optional chaining)현재 옵셔널이 nil이 될 수 있는 프로퍼티, 메소드, 서브스크립트를 조회하고 호출하는 과정 옵셔널에 값이 있으면, 프로퍼티, 메소드, 스크립..

Mobile/ios & swift 2018.03.19

[Swift 4] Swift 둘러보기

오랫만에 새로운 언어를 배워볼 겸, Swift를 시작해보았습니다.시작해보면서 Swift 4로 변경된 부분의 글은 많지만, Swift 4로 언어를 시작하는 사람을 위한 문서는 없는 것 같아 정리해 보았습니다. Swift를 알지 못하는 사람이 배우면서 번역한 글이라 영어를 떠나서 내용을 이해못하고 쓴 부분이 있다면 피드백이 있었으면 좋겠네요~ 해당 글은 여기에서 참고 하세요.https://flyburi.gitbooks.io/swift4/content/chapter1.html

Mobile/ios & swift 2017.12.04