목록개발 (87)
khstar
iOS에서 Device의 Model이름을 찾아오는 방법입니다. google에서 검색하면 다양하게 나옵니다. 더욱 간단하게는 UIDevice에 Extension 해서 사용하는 방법도 있죠.전 그냥 Util로 static func로 만들어 봤습니다. 기본적으로는 deviceModelName()만 호출하면 modelName이 반환됩니다. 모델 정보는 https://www.theiphonewiki.com/wiki/Models을 참조 하였습니다. ///Identifier 찾기 static func getDeviceIdentifier() -> String { var systemInfo = utsname() uname(&systemInfo) let machineMirror = Mirror(reflecting: sys..
이번엔 iTunes connect의 TestFlight(테스트플라이트) 로 테스트 앱 배포하는 방법에 대해서 알아보겠습니다. 우선 양해의 말씀을 드릴것은 테스트 앱이 정식 앱이 아니라 전부 마스킹 하여 캡쳐이미지가 좀 지저분 하네요. ㅜㅜ그리고 TestFlight에서 설치한 앱과 AppStore에서 설치한 앱은 같이 있을수 없습니다. 이점 주의하세요.그럼 설명 들어가겠습니다. 혹시 제가 잘못 알고 있는 것이 있다면 알려주세요. ㅜㅜ 1. 우선 애플 개발자 계정 관리자로 iTunes Connect에 로그인하고 사용자 및 역할을 메뉴를 선택합니다. 2. 다음과 같은 화면이 나오면 사용자 옆의 + 버튼을 선택하여 테스트 사용자를 추가합니다. 3. 성/이름, 이메일 주소를 입력합니다. 여기 입력되는 이메일은 A..
어제 열심히 글을 최종 완료를 안하고 잠을 잤는데 임시 저장을 하고 있다고 생각했는데. 그냥 다 지워져서 다시 씁니다. ㅜㅜ 우선 정상적인 앱 개발을 위해서는 애플 개발자 프로그램을 구매 해야합니다.구매하지 않고도 앱을 개발할 수 있는 방법이 있지만 기능적 제약 사항이 많고 인증서 생성 및 AppID 생성등에 대한 전반적인 설명을 할 예정이라개발자 프로그램이 있다는 전제하에 진행할 예정입니다. 애플의 개발자 자격은 아래와 같습니다. 일반 : 개인 개발자 계정입니다. 연 99달러 비용이 필요하고 개인 개발자 계정이라 팀 관리 기능을 지원하지 않습니다. 조직 : 사업자 등록이 되어있는 기업형 계정입니다. 연 99달러의 비용이 필요하고 팀 관리 기능을 지원 합니다.엔터프라이즈 : 사업자 등록이 되어있는 기업형..
기존에 UIWebView를 이용해 개발되어 있든 웹앱에서 퍼블리싱이 변경되면서 화면이 깨지는 현상이 발생하였다. 그래서 WKWebview로 변경해서 적용해 보니 정상적으로 표시되는 것을 확인되어 이번 기회에 WKWebview로 변경 작업 중이다. 단순하게 생각했을때는 Webview의 교체이니 오래 걸릴건 없다고 생각했지만 일단 WKWebview는 StroryBoard에서 생성할수가 없어.swift에서 직접 선언하고 addSubview 해줘야 한다. 이 외에도 개발을 진행하며 추가적으로 해줘야할 부분이 있는데 자세한건 다음 기회에 코드레벨로 작성하기로 한다.
AppStore에 앱을 올리는중 다음과 같은 에러가 발생하는 경우 This bundle is invalid. The key CFBundleShortVersionString in the Info.plist file must be a period-separated list of at most three non-negative integers. info.plist의 Bundle version string, short 와 target의 summary->version을 같게해주세요. 다음의 링크를 확인하세요. http://forums.runrev.com/viewtopic.php?f=49&t=6230 그럼 잘 해결하시길 바랍니다.
기본적으로 0x가 붙지 않은 16진수는 Integer.partInt("FF", 16) 으로 변환이 가능 하다. 그러나 0x가 붙은 16진수 문자열을 주고 받는 경우 간단하게 생각하자. 어떤 방법을 이용해서든 0x를 잘라내고 FF 스트링만 만들어 주면 된다. 그래서 0x를 잘라서 10진수 정수 값을 돌려주는 메소드를 만들어 봤다. public static int dec(String hex){ String[] temp = hex.split("0x"); StringBuffer dec = null; for(String strArr : temp){ dec = new StringBuffer(); dec.append(strArr); } return Integer.parseInt(dec.toString(), 16); ..
자바 스윙에서 윈도우 이벤트 발생시에 WindowLister를 확장해서 사용하게 되면은 바로 해당 메소드를 실행하게 된다 예를 들어 오른쪽 상단에 x버튼을 클릭하여 프로그램을 종료하는 경우 다음과 같이 하면 "프로그램이 종료 됩니다."를 수행한 후 바로 프로그램이 종료됩니다. public class MainUI implement WindowLister{ @Override public void windowActivated(WindowEvent arg0) { // TODO Auto-generated method stub } @Override public void windowClosed(WindowEvent arg0) { // TODO Auto-generated method stub } @Override pu..
위에분말이 정답이네요.. 윗분말처럼 아마도 오픈소스라면.. String을 직접 사용하지 않고, byte[]로 drawString을 할것같습니다만.. ㅎㅎ 이 byte[]를 String으로 변환시에 한글과 영어로 구분해서 변환해야 drawString시 한글이 깨지지 않고 제대로 찍힙니다. 아시다시피 한글은 영어와는 달리 2byte로 한문자를 표현하며, 또다른 특징으로 byte하나 하나가 모두 음수값을 가진다는 것입니다. 이런 특징을 이용해서 해당 byte[]을 String으로 만들어 내는 함수를 하나 작성해서 사용하시면 될것같습니다. 아래는 byte[]을 input으로 받아서 String을 output으로 반환하는 함수입니다. 물론 byte[]이 영어, 한글, 혹은 둘이 섞여있는 문장이라도 상관없이 적절한..
this.jPasswordField1.enableInputMethods(true); 위의 코드를 넣어주면 한글이 입력될수 있다..
Frame을 이용해서 윈도우 창을 만들더라고 종료버튼(제목표시줄 X 아이콘)을 누르더라도 종료가 되지 않는 것을 볼 수가 있습니다. AWT 컴포넌트들은 단순히 눈에 보여지는 것이 기본이기 때문에 그 어떤 기능도 들어 있지 않다고 할 수 있습니다. 이 부분은 개발자가 java.awt.event 패키지를 이용해서 각 기능을 만들어줘야 합니다. 이것을 이벤트라고 하는데 각 컴포넌트들이 눌러지거나 어떤 조건을 성립하게 되면 특정 기능을 수행하도록 하기 때문입니다. 게임에서 특정 조건이 모아지면 일어나는 이벤트와 같은 의미입니다. java.awt.event 패키지를 보게 되면 각종 이벤트리스너들이 있는 것을 확인 할 수 있습니다. 마우스, 키보드, 윈도우 등 각 컴포넌트에 맞게 적절히 선택해서 사용하면 되는 부분..