본문 바로가기

운동하는 개발자

(181)
윈도우 JNLP 확장자 파일 실행 방법 우선 JNLP파일이란 Java Network Launch Protocol의 약자로 서버에 있는 jar파일을 받아 실행한다고 보면 된다 이를 실행하기 위해선 JRE(Java Runtime Environment)가 설치되어있어야 하고 실질적으로 실행하는 바이너리는 "[설치된경로]\jre1_8.버전\bin\javaws.exe" 파일이다 (필자는 개발자 이다보니 JDK만 설치해놨어서 해당 파일이 없었고 '나는 자바 이미 설치되어있는데 왜 실행이 안되지?' 라고하며 java.exe로 암만 실행해도 아무 반응이 없었다) 자바설치 주소 : www.java.com/ko/download/ 자바 설치 후 cmd창에서 java -version 명령으로 설치된것을 확인하고 jnlp파일을 그냥 실행했을 때 아무반응이 없거나 정..
HackerRank [Constructive Algorithms] Flipping the Matrix /알고리즘 해커랭크 문제주소 : www.hackerrank.com/challenges/flipping-the-matrix/problem 문제 : 2n * 2n 크기의 매트릭스를 큐브돌리듯이 상하 좌우를 회전시켜서 n * n 크기의 좌측상단 매트릭스에 최대값이 위치하도록 한 뒤 그 매트릭스의 모든값을 합한값을 리턴하라 풀이 1. 매트릭스 가장 좌측상단의 1열1행에 있는 값은 아무리 회전한들 결국 존재할 수 있는 위치는 n열n행, 1열 n행, n열 1행, 1열1행 4곳밖에 존재 할 수 없다 2. 반대로 그 4곳에 위치하는 값중 가장 큰 값이 1열1행에 존재하게 될 것이다 3. 모든 나머지 매트릭스의 위치값들도 matrix[i][j], matrix[i][n-j-1], matrix[n-i-1][j], matrix[n-i-1][n-..
HackerRank [Bit Manipulation]Lonely Integer /알고리즘 해커랭크 문제주소 : www.hackerrank.com/challenges/lonely-integer/problem 문제 : 주어진 int array에서 같은 수의 값을 한쌍씩 제외시킨 후 홀로남는 값을 리턴하라 풀이 1. 같은 값을 한쌍씩 없애는 가장 쉬운방법은 모든값을 누적으로 xor시켜버리면 된다 답안 #!/bin/python3 import math import os import random import re import sys def lonelyinteger(a): result = 0 for i in a: result = result ^ i return result if __name__ == '__main__': # fptr = open(os.environ['OUTPUT_PATH'], 'w') fptr =..
java file md5 checksum / 자바 파일 md5 체크썸 MD5는 과거 128비트 암호화 해시함수로 사용되었으나 암호화 결함 오류로인해 암호화에는 사용되지 않고 파일의 무결성 검사에 주로 사용되고 있다 나도 그 용도로 사용중에 있다 public static byte[] createChecksum(String filename) throws Exception { InputStream fis = new FileInputStream(filename); byte[] buffer = new byte[1024]; MessageDigest complete = MessageDigest.getInstance("MD5"); int numRead; do { numRead = fis.read(buffer); if (numRead > 0) { complete.update(buffer,..
HackerRank [Bit Manipulation] Counter game /알고리즘 해커랭크 문제 주소 : www.hackerrank.com/challenges/counter-game/problem 문제 : Louise와 Richard가 번갈아 가며 주어진 숫자가 2의 제곱근 값인지 확인한다 2의 제곱근 값이라면 1/2 값을 상대에게 넘기고 아니라면 주어진 숫자보다 작은 숫자 중 가장 높은 2의 제곱 값과의 차이 값을 상대에게 넘겨주되 1을 넘겨주면 승리한다 Louise가 항상 먼저 시작한다 풀이 1. 공학용 계산기에 2의 제곱근을 순서대로 입력해보았다 (2..4..8..16..32) 이 값들의 2진수 값들은 10, 100, 1000, 10000이다 가장 앞자리는 1이고 2의 승수만큼 뒤에 0이 붙는다 2. 전달받은 값 n을 2진수로 바꾸고 그 길이를 구한 뒤 그 길이와 같은 2의 제곱근 값을 ..
안드로이드11 내파일, ASTRO로 android/data 경로 접근불가 특정 url을 통하여 파일을 다운받는 시스템을 테스트중이였는데 최신 기기에서 정상적으로 다운이 되었는지 내 파일 앱을 통해 /Android/data를 열었더니 다음과 같은 화면이 나왔다 찾아보니 안드로이드11 (API30) 부터는 보안정책에 의해 접근이 불가능하다고 하였다... 파일다운이 정상으로 된건지 확인하기 위해 압축파일을 열어보는 방식으로 진행하고 있었는데.. 임시로 테스트파일을 미디어파일로 변경 후 다시 다운받아 플레이어로 재생해보려고 했으나 자동으로 미디어파일을 찾지 못하고 수동으로 경로를 찾아가도 동일하게 접근 할 수 없었다 앱내에서는 자신의 경로의 권한을 획득해놨으니 소스안에서 Hash값을 통해 파일이 정상적으로 다운완료되었는지 확인해야 할 것 같다.. 기왕 들어간김에 안드로이드11관련 내..
[서비스종료] 스마트 모바일 앱개발지원센터 SMAC 사용하기 / 모바일기기 테스트 21년 12월 30일부로 서비스 종료되었습니다 2021/02/09 - [운동하는 개발자/Android] - 국내/외 모바일 기기별 앱 테스트 서비스 비교 국내/외 모바일 기기별 앱 테스트 서비스 비교 아이폰은 개발한 경험이 없어서 잘 모르지만 안드로이드의 경우엔 cpu도 제각각, 디스플레이도 제각각, os버전도 제각각이기에 다양한 기기에서 테스트를 진행해야 한다 더보기 회사에 테스트폰 singo112ok.tistory.com 이전 글에서 확인해본 내용 중 SMAC 사용법을 알아보자 접속링크 : www.appvillage.or.kr/main/main.do 1. 우선 접속하여 회원가입을 한다 특별한 개인정보없이 간단하게 가입이 가능하다 2. 온라인 테스트 도구를 클릭한다 3. 요구사항을 확인하고 문제가 있으..
국내/외 모바일 기기별 앱 테스트 서비스 비교 아이폰은 개발한 경험이 없어서 잘 모르지만 안드로이드의 경우엔 cpu도 제각각, 디스플레이도 제각각, os버전도 제각각이기에 다양한 기기에서 테스트를 진행해야 한다 더보기 회사에 테스트폰이라곤 겔럭시s8 그리고 그보다 더 오래된 기기 두개.. 간단한 수정 후 배포 같은건 내 개인폰과 테스트폰으로 테스트하며 배포했었지만 최근 대규모 변경된 솔루션이 출시 준비중이라 다양한 테스트폰이 필요했다 처음엔 직원들 폰까지 동원해서 테스트해보았으나 직원들 폰들도 최신폰에 삼성폰 위주이다보니 대부분이 중복되었고 다양한테스트 라는 조건을 만족시킬 수 없었다 그래서 찾아보니 원격으로 테스트 가능한 서비스가 의외로 많았는데 크게 자동화 스크립트를 사용한 자동화 테스트와 수동으로 (AVD를 띄어서 테스트하는듯이) 원격으로 실제..