앱등이에게 살충제를 뿌린다.
-
Introducing iOS application <Add Calendar>앱등이에게 살충제를 뿌린다./iOS 2019. 10. 7. 03:12
It's hard to add calendar on a wallpaper. So, I just made an app which adds a calendar on your wallpaper.It's so simple, just follow me only for a second. 1. Choose a picture you want. . 2. Set a area you want by cropping and moving the picture. (Football icon on the top provides a football schedule.) 3. Create your own calendar. 4. Check whether the calendar fits your wallpaper or not. If not, ..
-
배경화면을 꾸며주는 배경화면에 달력을 앱을 소개합니다.앱등이에게 살충제를 뿌린다./iOS 2019. 10. 7. 03:08
아이폰은 위젯기능이 빈약하여 배경화면에 달력추가가 힘듭니다. 그래서 내 배경화면에 쉽게 달력을 추가해주는, 앱을 소개합니다.초초초 간단주의!!! 1. 원하는 사진을 선택한다. . 2. 선택한 사진에서 배경화면으로 지정할 영역을 설정해준다. (상단의 축구공을 누르면 축구팀 스케쥴을 가져옵니다.) 3. 나만의 달력을 생성한다. 4. 내 배경화면과 잘 어울리는지 확인하고, 달력의 크기와 위치를 잡아준다. 5. 사진첩에 저장하고 배경화면으로 설정한다. 유럽 8개팀 기본 배경화면
-
리젝 폭탄.. 리젝이~ 4개~앱등이에게 살충제를 뿌린다./iOS 2019. 10. 6. 19:00
🇰🇷개천절🇰🇷을 맞아 새로 만들었던 앱이 리젝을 맞았다. 무려 리젝 항목이 4개라서 의욕 팍 꺾인다. 1. Safety: Devloper Information 이건 앱스토어 항목에 기재하는 앱 가이드 웹사이트 링크를 내가 맘대로 적었더니 이렇게 됨 ㅋㅋ 이때까지 맘대로 했는데, 그냥 운이 좋아서 통과 됐었나보다. 2. Design: Copycats 이번 앱에는 유럽 축구팀 로고가 몇 개 들어갔다. 근데 그거 쓰지말라고 리젝받음 ㅠㅠ UI다 바꿔야해서 1차 의욕 꺾임 3. Legal: Privacy - Data Collection and Storage 사진첩 접근문구 너무 허접하다고 리젝 사진첩에 접근하는 이유를 상세하게 적어 주도록하자.. 4. Legal: Intellectual Property - Ap..
-
App Extension과 Host App의 코드를 공유하고 싶다면?앱등이에게 살충제를 뿌린다./iOS 2019. 4. 8. 15:33
HostApp의 코드를 사용하고 싶다? 원칙적으로 불가능하다. Host App의 코드를 사용한다는 말은 HostApp과 Extension에서 같은 코드를 사용하고 싶다는 말과 같다. 이를 가능하게 해주는 것은 공통코드를 Framework로 만들어서 각각 target에 embd하는 것이다. 예를 들어, 이미지 필터기능을 사용하는 앱이라면 필터기능에 대한 코드를 Framework로 만들고 Hostapp과 Extension에 embed해서 사용하는 것이다. 내생각: 필수코드 또는 필수기능이 아니라면 이렇게까지..? 출처: Using an Embedded Framework to Share Code (https://developer.apple.com/library/archive/documentation/Gener..
-
[AVFoundation] Observing the Playback Time (동영상의 재생시간 Observe하기)앱등이에게 살충제를 뿌린다./Apple Dev Reference 2018. 11. 6. 03:05
Observing the Playback Time https://developer.apple.com/documentation/avfoundation/media_assets_playback_and_editing/observing_the_playback_time Overview 미디어의 재생시간의 흐름을 알고 싶다. 현재 재생시간에 따라 인터페이스를 변경하고 싶을 수도 있고.. 이 때, KVO는 좋은 선택이 아니다. 왜냐하면 KVO는 시간의 흐름 같은 continuous state change에는 적합하지 않기 때문이다. 대신 AVPlayer는 다른 방법 2가지를 제공한다. Observe Periodic Timing Time interval에 기반한 Observe가 가능하다. 커스텀 미디어 재생플레이어를 만..
-
[AVFoundation] About the Asset Model (AVAsset에 관하여)앱등이에게 살충제를 뿌린다./Apple Dev Reference 2018. 11. 6. 02:35
About the Asset Model https://developer.apple.com/documentation/avfoundation/media_assets_playback_and_editing/about_the_asset_model Overview AVFoundation의 많은 기능에서 AVAsset클래스를 사용한다. AVAsset을 사용하면 미디어 작업을 하는데에 2가지 이점을 얻는다. 첫 번째, 미디어 포맷을 신경쓰지 않아도 된다. AVAsset은 미디어를 나타내는 모델이라고 생각하면 된다. 이 때, 미디어 포맷에 관련된 것은 AVFoundation이 알아서 해준다. 우리는 미디어 포맷을 신경쓰지 않고 작업할 수 있다. 두 번째, 미디어의 위치에도 의존하지 않는다. 미디어가 앱번들에 있어도, 로..
-
[Apple Dev Reference] AVPlayer앱등이에게 살충제를 뿌린다./Apple Dev Reference 2018. 11. 2. 21:58
Declarationclass AVPlayer: NSObject OverviewNote하나의 AV미디어를 재생하기 위해 사용한다.replaceCurrentItem(with:)를 사용하면 현재 재생하고 있는 미디어를 다른 미디어로 교체할 수 있다. AVPlayer의 서브클래스인 AVQueuePlayer를 사용하면 여러개의 미디어를 큐에 담아 연속적으로 재생할 수 있다. AVPlayer는 미디어의 재생과 타임을 관리할 수 있는 컨트롤러다.로컬에 있거나 리모트에 있는 file-based 미디어를 재생할 수 있다. QuickTime 비디오, MP3오디오, HTTP Live Streaming 등 AVPlayer에 미디어를 재생하려면 AVFoundation에 있는 모델 클래스, AVAsset을 사용해야 한다.AVA..
-
[GCD] DispatchQueue.. main큐와 gloabal큐? sync와 asnyc? 궁금증 해결해보자.앱등이에게 살충제를 뿌린다./Swift 2018. 9. 4. 16:22
많은 언어에서 제공하는 비동기 처리 방식.Swift(또는 objc)에는 GCD가 있다. iOS개발을 하다보면, 아래 코드를 많이 보고, 또 사용할 수 밖에 없다.DispatchQueue.main.async {//...} 구글에 GCD를 쳐보면 무수히 많은 정리문서가 존재한다. (심지어 한글로 포스팅한 글도 엄청 많음)그래서 난 나만의 정리를..위해서 포스트를 작성한다. 아래 코드의 결과를 정확히 예측할 수 있다면, 학습이 되었다고 판단하겠다. UIViewController의 viewDidLoad()에서 작성한 코드니까, 아래 코드는 메인스레드에서 작동한다는 전제가 있다. override func viewDidLoad() { super.viewDidLoad() DispatchQueue.global().sy..