설정

일반

맨 밑에서 가까운 VPN및 기기 관리

가장 아래에 있는 이메일 클릭

상단의 파란색 글씨 클릭 확인

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

설정

개인정보 보호 및 보안

가장 아래에서 두번째 개발자 모드

개발자 모드 스위치 클릭

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

맥에 ruby가 기본적으로 깔려있는데 업데이트 하기 위해 설치할 것들이 많다.

먼저 홈브루를 설치해준다.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

설치가 완료되면 아래를 터미널에 입력해서 버전을 확인해보자.

brew --version

홈브루를 최신상태로 업데이트 하자

brew update

홈브루를 이용해 rbenv를 설치하자.

brew install rbenv

rbenv가 설치되면 rbenv로 루비를 인스톨한다.

 

rbenv install 2.7.5
rbenv global 2.7.5

아래 두 명령이 같은 버전이라면 완료다.

rbenv versions
ruby --version

하지만 두 버전이 다르다면 .zshrc를 생성 혹은 수정해줘야 한다.

sudo nano ~/.zshrc

제일 밑에 아래 내용을 넣어준다.

eval "$(rbenv init - zsh)"

저장한 후 아래 명령을 입력하고 다시 버전을 확인해 보자.

source ~/.zshrc
블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

맥의 터미널과 iterm2는 z shell을 사용한다.

~/.zshrc 파일을 생성하거나 수정해서 아래 줄에 아래 내용을 넣어준다.

sudo nano ~/.zshrc
export PATH="$PATH:/Users/username/flutter/bin"

/Users/username/flutter/bin을 원하는 주소로 변경하면 된다.

 

터미널을 종료했다가 다시 실행하면 PATH가 원하는대로 작동한다.

 

bash shell을 사용한다면 ~/.bashrc 혹은 ~/.bash_profile 에 작성해야 한다.

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

최근에 ios도 개발해보려고 오래된 맥북을 중고로 샀다.

그런데 개발하려면 xcode를 깔아야 하는데 xcode를 사용하려면 최신 버전의 바로 아래단계이상을 써야한다.

최신이 소노마인데 그 아래인 벤츄라를 써야한다.

그런데 이 맥북은 벤츄라를 지원안하는 모델이었다.

그래서 알아보다가 지원종료된 맥북에 최신 os를 설치할 수  있는 패치를 발견했다.

오픈 코어라는 패치를 이용해 지원종료를 우회해서 깔수 있게 해준다.

최신 os엔 오류가 많을지도 모른다는 생각에 그 바로 밑인 벤츄라를 깔았다.

 

설치하기 위해선 지원종료된 맥이 필요하다.

맥os 상에서 진행을 해야한다.

 

다운로드 https://github.com/dortania/OpenCore-Legacy-Patcher/releases

설치 안내 https://dortania.github.io/OpenCore-Legacy-Patcher/START.html

 

먼저 설치할 수 있는 모델인지 확인하라고 나온다.

https://dortania.github.io/OpenCore-Legacy-Patcher/MODELS.html

 

설치 안내 페이지의 링크들을 꼼꼼히 클릭해서 보길 바란다.

특정 모델에 관한 예외사항도 있는데 여기 설명하지 않은 내용도 있다.

 

다운로드 페이지에서 최신에서 바로 아래단계의 opencore patcher를 받았다.

압축을 풀고 앱을 실행시킨다.

실행된 앱에서 create macos installer를 클릭해 usb에 설치 디스크를 만든다.

usb는 16기가 이상을 사용해야 하는데 다이소에서 5천원에 산 32기가를 사용했다.

download macos installer 를 클릭하고 선택화면에서 설치할 macos를 선택해준다.

mac비밀번호를 입력하라는 창이 나오면 입력해준다.

인스톨할 맥os를 선택해주고 usb를 선택해준다.

 

그 다음은 아까 다운로드 받은 앱에서 build and install opencore를 클릭한다.

install opencore를 클릭하고 install to disk를 클릭해준다.

os를 설치할 ssd 혹은 hdd를 선택하고 efi 디스크를 선택해준다.

설치가 완료되면 재부팅을 하게 되는데 그 때 option키를 누르고 있어야 한다.

그럼 선택창이 나오는데 그 중에 efi boot 를 선택하고 ctrl키를 누르고 엔터를 입력한다.

 

설치하면서 재부팅이 여러번 됐었다. 벽돌되는지 걱정하지 말고 기다려보자.

 

설치가 완료되면 맥os화면으로 넘어간다. 몇가지를 설정해준 뒤에 

다운로드한 앱을 실행해 root patch를 클릭하고 start root patch를 클릭한다.

 

opencore를 설치하면 실행되는 로그인 프로그램이 세가지 있는데 opencore 어쩌고와 myk 어쩌고와 rm 이다.

찜찜하다면 opencore를 사용하지 않거나 해당 프로그램을 실행되지 않게 하는 것도 방법이다.

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

5년전쯤에 구매한 iwork10 ultimate가 있는데

낮은 안드로이드 버전과 윈도우 퍼포먼스가 만족스럽지 않아 다른 os를 설치해보았다.

다 지우고 처음에 우분투를 설치했는데 무선랜과 그래픽 사운드 잘 잡혔다.

그리고 화면회전도 잘 되었다.

이걸 보면서 왠지 다른 os를 설치할 수 있을 것같은 자신감을 얻은 것 같다.

그런데 터치가 왼쪽을 터치하면 오른쪽이 터치되고 오른쪽을 터치하면 왼쪽으로 터치되는 문제점이 있었다.

touch calibration을 해보았으나 쉽게 되지 않았다.

그래서 다른 os를 특히 리눅스와 안드로이드를 찾아보았다.

그 중에서도 PC와 태블릿에 특화된 버전으로 찾아보았다.

 

깔아본 os는 다음과 같다.

우분투데스크탑 22.04

리믹스OS

primeos 0.6.1

phoenixos 3.0.5

jingos 0.9

bliss 11.13

android-x86

 

등 다양한 os를 깔아보았다.

어떤 건 무선랜이 안잡히는 것도 있었고 소리도 안나오는 것도 있었다.

대부분 동일한 증상은 우분투처럼 touch가 반대로 나오는 것이었다.

 

다 깔아보니 원래 순정상태가 더 좋았다는 것이었다.

그리고 윈도우란 운영체제가 참 편의성이나 여러모로 좋았다는 생각이 들었다.

OS를 설치하기도 쉬운 편이고

드라이버를 찾아주는 프로그램도 있고 검색하면 대부분 나오기 때문이었다.

 

새로운 OS를 깔아보고 오히려 순정보다 못한 것을 보면서 다시 순정으로 돌아오게 되었다.

iwork10 pro 혹은 ultimate란 이름으로 나온 모델이 여러가지 있었는데

그중에 내가 가지고 있는 것은 i15-td라는 모델명을 가지고 있다.

한국에서 출시된 모델은 다 i15-td인지 다른 모델도 있는지는 모르겠다.

 

그런데 아무리 찾아도 순정 펌웨어를 찾을 수가 없었다.

그래서 다른 버전을 찾아서 해보다가 i15-tfl을 깔아보니 대부분 잘 작동되었다.

카메라, 화면회전, 터치 등등

그런데 영어로 된 로고로 나오던 것이 한자로 나왔다.

그리고 모델명이 i15-tfl로 나왔고 부팅 애니메이션도 그 한자를 이용한 것이었다.

그래서 루팅을 한 뒤 모델명을 i15-td로 바꾸고 부팅 애니메이션도 찾아서 바꿔주었다.

 

윈도우는 해당모델 버전 윈도우가 아니라 순정 윈도우 설치 usb를 이용해 설치했다.

그리고 드라이버는 i15-tfl 윈도우 설치파일중 wim파일에서 dism으로 드라이버를 추출하고

나머지는 인터넷에서 받은 i15-t용 드라이버를 깔았다.

알수없는 장치는 없었고 작동은 전부 잘 되는 것 같았다.

아래는 터치 스크린 드라이버이다.

install를 관리자 권한으로 실행해야 한다.

실패했다고 뜰텐데 그냥 무시하고 touchsetting.gt와 devcon.exe는 이미 복사가 되었을 것이다.

그리고 혹시 모르니 드라이버를 따로 설치해주자.

iwork10_i15_t_touch_driver_win.zip
1.94MB

 

iwork10은 중국버전이 아니라면 다른 거 설치하지 말고 왠만하면 순정을 쓰는게 더 나은거 같다.

물론 안드로이드만 윈도우만 설치하는 것도 가능하다.

 

키 포인트만 설명하자면 안드로이드는 순정펌웨어 설치 파일의 gpt.bin을 수정해야 한다.

x98시리즈의 gpt_53g.bin 파일을 수정해서 전체용량을 대부분 사용하는 파일을 만들었다.

gpt_full.bin
0.00MB

gpt_full.bin을 gpt.bin으로 변경하고 펌웨어를 설치하면 모두 사용하게 될 것이다.

53g를 55g로 만든 것이다. iwork10의 디스크를 확인해보면 전체가 58g로 확인된다.

그 중 8g가 안드로이드 데이터 파티션으로 잡히고 나머지 47.2g정도가 윈도우로 잡힌다.

8+47.2g해서 55.2g인데 55g면 대부분 사용하게 될 것이다.

58g중 나머지 3g는 시스템이나 다른 파티션에서 사용한다.

200메가 정도 남는 공간이 있을텐데 이 정도는 남겨둘 수 밖에 없을 것 같다.

실제로 펌웨어를 올려보진 않았는데 이론상으론 잘 작동할 것이다.

그리고 그 전에 윈도우에서 switch now 프로그램을 실행시킨 뒤 듀얼 부팅을 disable 시켜줘야 한다.

그렇지 않으면 os 선택 화면이 계속 나올 것이다.

SwitchNOW.exe
0.31MB

 

윈도우는 파티션을 전부 포맷한 뒤 윈도우를 파티션 할당해서 하면 된다.

나는 android-x86 설치 디스크를 이용해서 파티션만 제거해주고 ms에서 받은 윈도우 설치usb로 설치했다.

 

iwork10 펌웨어를 계속 찾아보다 중국어로 된 iwork10 펌웨어 글을 찾았다.

i15-tcl이었는지 뭔지는 기억이 안나는데 내가 가지고 있는 버전은 아니었다.

그 사이트에서 검색을 했더니 내가 가지고 있는 버전이 나왔다.

아래가 그 사이트이다.

받기 위해서는 바이두 아이디가 필요하고 바이두 클라우드를 통해 받는다.

파일 크기가 6.6기가인데 윈도우 설치용 안드로이드 설치용 모두 포함된 버전인거 같다.

무료 사용자 기준 24시간 정도 걸리는거 같다.

바이두 클라우드에서 비번을 물어보는데 그것도 사이트에 적혀있다.

한글로 번역해서 보면 될 것이다.

 

받아서 설치해보니 안드로이드는 i15-t 버전이라 카메라 지원이 안됐다. 그리고 회전이 됐는지 안됐는지 기억이 안난다.

카메라와 회전 모두 지원하는 i15-tfl 로 다시 돌아가서 magisk로 루팅한 후에 build.prop과 bootanimation.zip을 바꿔주었다.

i15-tfl 펌웨어는 여기서 받을 수 있다.

https://pan.baidu.com/share/link?shareid=467329010&uk=3474489303#list/path=%2F 

 

I15-TFL_免费高速下载|百度网盘-分享无限制

 

pan.baidu.com

나같은 경우는 아예 다 지우고 새로 깔 생각으로 도전했었지만

안드로이드를 설치 usb로 설치할 때 파티션을 새로만들고 포맷한다.

안드로이드 설치하기 전에 백업할 자료가 있다면 미리 백업해야 한다.

 

2023.02.07 추가

결국엔 디클에서 요청해서 iwork10 i15-td 정식 안드로이드 펌웨어를 받아 설치했다.

이제 중국어로 나오던 부팅 로고도 영어로 잘 나온다.

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

안드로이드 윈도우 듀얼 부팅 태블릿을 가지고 있다.

사용하다보면 시간이 안맞을 때가 있다. 

리눅스에서 UTC 타임존을 사용해서 그런 문제가 있었는데

안드로이드도 리눅스 커널을 이용하기 때문에 그런건지 모르겠다.

우분투에서 했던 datetimectl 명령어를 이용해보려 했지만 실행되지 않았다.

대신 윈도우 상에서 레지스트리를 수정해서 UTC 타임존을 이용하도록 바꾸면 된다.

cmd를 이용해서 아래 명령줄을 실행하자.

검색에서 cmd를 검색하고 관리자 권한으로 실행한다.

 

윈도우가 64비트라면

Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1

윈도우가 32비트라면

Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

64비트는 QWORD 32비트는 DWORD의 차이점만 있고 같다.

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

Using RxJava 2 - Tutorial


amitshekhariitbhu/RxJava2-Android-Samples: RxJava 2 Android Examples - Migration From RxJava 1 to RxJava 2 - How to use RxJava 2 in Android


Understanding Marble Diagrams for Reactive Streams – Medium


RxMarbles: Interactive diagrams of Rx Observables


RxJava applied [JavaDay Kyiv 2016]


블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,

MIT, Apache 라이센스 

상업적 사용이 가능하며 소스 코드 공개의 의무가 없어 GPL, LGPL 등의 카피레프트 라이센스가 가진 엄격함을 꺼리는 사용자층을 대상으로 널리 쓰이는 라이센스이다.

이와 유사한 라이센스로 bsd / artistic 라이센스가 있다.


GPL, LGPL 상업적 사용이 가능하지만 카피레프트 라이센스라서 사용할 시에 소스를 공개해야 한다.

위의 라이센스의 라이브러리가 많으니 아예 사용하지 않도록하자


그외의 라이센스는 아래 링크에서 확인할 수 있다.

http://www.bloter.net/archives/209318


그냥 단순하게 MIT, 아파치 라이센스의 라이브러리를 사용하자

블로그 이미지

dev김

안드로이드 개발자로 만 4년이 좀 안되게 근무했었고 그 이상의 공백을 가지고 있다. 다시 현업에 복귀하기 위한 노력의 흔적을 담으려고 한다.

,