본문 바로가기
  • Survival Plan

개발 이야기38

초간단 안드로이드 아이콘 (Launch Icon) 세팅하기 안녕하세요. 이번 포스팅에서는 React Native의 안드로이드 아이콘 세팅을 간편하게 진행하기에 대하여 소개 드립니다. 안드로이드 앱을 Play Store에 올리거나 출시할 때, 꼭 해야 하는 일 중 하나가 다양 아이콘에 대하여 각각 만들어 주어야 하는 것입니다. 다양한 안드로이드(Android) 버전이 있기 때문에, 각 버전마다 해상도도 다르고, 해상도별로 아이콘이 개별 있어야 하는 건데요.. (이런것은 그냥 안드로이드 자체에서 지원하면 안되나?? 하는 생각이 듭니다. Large Icon 하나 등록 받고 자체 생성 하면 될텐데요.. ㅜ_ㅜ) 여하튼 여러가지 해상도 버전을 만들어서, 앱 안에 포함을 시켜야 합니다. 이 때문에, Android 앱에는 다음과 같이 res 폴더 아래 다양한 해상도의 아이콘.. 2020. 3. 27.
자녀 IT교육 - 자녀와 게임 만들어 Play Store 출시하기 안녕하세요. 요즘 2세의 교육에 대한 관심이 많습니다. 자원도 없고 인구수도 적은 대한민국은 교육수준이 높기 때문에 지식산업 및 SW 산업으로 발전해야 한다고 생각하고 있습니다. 제조업으로는 이제 인건비 단가도 감당이 안되고, 4차 산업혁명으로 자동화 하기 전까지 비용 효율화를 할 수 없다고 생각 합니다. 따라서, 대한민국이 살아 남을 수 있는 방법은 높은 교육수준으로 다양한 SW를 만들어서, 대한민국 인구수를 넘어서 전세계에 배포할 수 있는 SW 산업으로 발전되어야 살아 남을 수 있다고 생각합니다. 그래서 아이들의 SW교육이 중요한데... 아이들의 관심도가 쉽게 SW로 옮겨 올 수는 없겠죠. 이런 고민을 하다 보니, 아이들에게 어떻게 SW에 대한 친숙함, 경험과 자신감을 심어 줄지 고민을 하게 되었습니.. 2020. 3. 15.
React-native-sound 가 Release build에서 동작하지 않을 때 react-native로 어플리케이션을 개발함에 있어서, 다양한 모듈들을 import하여 사용한다. 어플리케이션을 만들다 보면, 사운드의 중요성을 알게 되는데, 이 때문에 개발의 마지막 쯔음에 가면 사운드 효과를 넣기 마련이다. Reat-native에서 사운드를 가장 쉽게 접근하는 방법은, react-native-sound를 사용하는 것이 가장 쉽게 접근하는 방법이라 하겠다. react-native-sound를 적용할 때, 버그 및 어려움을 제공하는 대표적인 예는, 1) resources (사운드 파일)의 위치가 정확하지 않을 때, 2) resource 파일에 대문자나 특수문자가 포함되어 있을 때, 3) resource 파일의 중복이 발생할 때, 4) 초기화 또는 release() 처리하지 못할 때 ==.. 2020. 3. 11.
[Python] 파일 해쉬 (hash) 및 Strings 기능 업무를 하다가 누군가 보안 관련 문의를 해 온적이 있었다. 암호 및 주요 민감 정보는 암호화를 하는 것이 아니라 HASH를 해야 한다고 답변을 해준 적이 있었는데, 특히, SHA-1 이상 SHA-256을 사용하면 좋다는 가이드를 해 주었다. 그랬더니, HASH 를 어떻게 하냐고 묻더라... ㅜ_ㅜ 그래서 아래처럼 간략히 코딩해서 참고만 하라고 보내준 적이 있었는데, 기억이 남아서 기록해 둔다. 좀 시간이 지난 이야기라서 이제는 해쉬라이브러리가 각 언어에서 일반화 되었지만, 사람이 모든것을 기억하고 살기에는 뇌용량이 아깝다. 기억할 필요 없는 것은 좀 적어두고 살자... ^^;;; import sys import hashlib import re def md5(in_file): m = hashlib.md5(.. 2020. 3. 10.
[Python] 딕셔너리를 데이터 프레임으로 (Dict to DataFrame) 관련글 2020/12/05 - [분류 전체보기] - [데이터 사이언스] 파이썬/R 온라인 실습기 2020/12/05 - [개발 이야기/Python] - [파이썬] IDE 없이 블로그에서 Python 바로 실습/공부 2020/06/04 - [개발 이야기/Python] - [파이썬] 원격 주피터 노트북 만들기 - AWS에서 나만의 Remote Jupyter Notebook을 구동해 보자. 2020/06/04 - [개발 이야기/Python] - [파이썬] Anaconda x Jupyter notebook 설치 및 설정 방법 - 가상환경으로 파이썬 개발환경 구성 2020/05/09 - [개발 이야기] - 파이썬 문법 5분만에 읽히기 - 파이썬 기본 문법 요약/정리 8 가지 2020/04/30 - [개발 이야기].. 2020. 3. 10.
RESTful API with Flask 우선 Flask에서 Rest를 지원(?)하고 있는 flask_restful 을 설치한다. 단순 PIP로 설치하면 된다. flask app를 구동하기 위한 기본 app를 만든다. flask restful에서는 get/post 등을 기본으로 지원하고 있어서 아래와 같이 입력 후 ‘pythonn -m app.py’를 실행해 주면 기본적으로 localhost:5000에서 application이 구동되는 것을 확인할 수 있다. from flask import Flask from flask_restful import Resource, Api from flask_restful import reqparse app = Flask(__name__) api = Api(app) class CheckData(Resource):.. 2020. 3. 10.
docker-compose.yml 파일 설명 정리 (작업중) 1. Docker 설치 참조 문서 : https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-from-a-package 1.1 리파지토리 설정 #1. Update apt package index sudo apt-get update #2. install Packages to allow apt to use a repository over HTTPS sudo apt-get install apt-transport-https ca-certificates curl software-properties-common #3. Add Docker's official GPG key : curl -fsSL https://download.docker.com/linux/u.. 2020. 3. 10.
Elasticsearch x Python - 엘리스틱 서치 연동 Elasticsearch가 설치되어 있는 환경에서, Python으로 간단한 질의를 해 본 스크립트이다. #!/usr/bin/env python # -*- coding: utf-8 -*- import json from elasticsearch import Elasticsearch host = '150.19.5.30' port = '9200' target = 'http://{}:{}'.format(host,port) #print(target) es = Elasticsearch( [{'host':host, 'port':port}]) docs = es.search(index='skt_app_vdi_file-20171123', filter_path=['hits.hits._*']) #len(docs['hits'][.. 2020. 3. 10.
구글 플레이스토어(playstore) 앱 버젼 업그레이드 구글 PlayStore에 게시해 둔 앱을 업그레이드 할 때 고려 사항을 정리해 본다. 1. 스토어 등록 및 버전 업그레이드 check list debug mode ⇒ release model 다시 빌드한다. cd android ./gradlew bundleRelease ./gradew assembleRelease cd .. 릴리즈 모드에서 변경해야 할 변수들을 수정한다. 예를 들면, 광고 ID 변경 (테스트ID -> 실제 ID값) 필요에 따라, code signing keystore 를 다시 점검 한다. 기존 앱과 변경된 앱의 keystore 파일과 패스워드는 동일하도록 유지해 준다. android/app/build.gradle 파일에서 version 정보를 변경한다. play.google.com 에서 .. 2020. 3. 10.