목록분류 전체보기 (420)
외로운 Nova의 작업실
- 구글맵 API 키 얻기 구글맵을 앱에서 사용하려면 구글맵 키가 필요합니다. 아래 링크로 들어가서 포스팅을 보고 따라하시면됩니다. https://furang-note.tistory.com/16 [Android/Kotlin] Google Maps API 사용하기 현재 진행 중인 프로젝트에 지도API가 필요해서 Fragment에 Google Maps를 보여주는 방법을 기록한다. 1. Google API 프로젝트 생성 및 사용 등록 Google API에 접속하여 프로젝트 만들기를 클릭한다. 새 프로 furang-note.tistory.com - 지도 사용 설정 먼저 그래들 파일에 의존성을 추가해줍니다. implementation 'com.google.android.gms:play-services:12.0.1..
- 구글 play 서비스의 위치 라이브러리 사용자의 위치를 얻으려면 gps, wifi, seluer 등을 이용해서 위치를 얻을 수 있습니다. 위치 제공자등을 선정할때는 아래와 같은 고려사항들이 있습니다. 전력을 적게 소비하는가 정확도는 높은가 API가 간단한가 부가기능을 제공하는가 일반적인 방법으로는 이런 것들을 하나하나 확인하고 검증해서 위치를 얻어야하기때문에 코드가 길어집니다. 따라서 대신 확인해주는 구글 play 서비스 라이브러리를 사용합니다. - 퍼미션 매니페스트 파일에 아래와같이 선언해줍니다. - 의존성 gradle 파일에 아래와 같이 선언해줍니다. implementation 'com.google.android.gms:play-services:12.0.1' - 위치제공자 초기화 GoogleApi..
- Volley 네트워크 프로그래밍을 돕는 라이브러리는 여러가지가 있지만 구글에서 제공하는 Volley를 사용하는 방법을 살펴보겠습니다. 먼저 인터넷을 사용하려면 사용자로부터 퍼미션을 얻고, https의 도메인 정보를 적어줘야합니다. 매니페스트파일에 아래와 같이 작성합니다. res/xml 폴더에 임의의 이름으로 XML을 만들고 아래와 같이 작성합니다. 저는 network.xml로 만들었습니다. https://cdn.pixabay.com/ 그리고 위 정보를 매니페스트파일에 등록해줍니다. 맨 아래에 보이시죠? 만약 모든 도메인과 통신하게하려면 아래와 같이 적어줍니다. 맨 아래 보이시죠? Volley를 사용하려면 먼저 의존성 등록을 해줘야합니다. implementation 'com.android.volley:..
- 스마트폰 정보 앱들은 대부분 http 통신을 통해 서버에 데이터를 저장하거나 불러오는 통신을 하면서 앱을 운영합니다. 따라서 핸드폰이 네트워크가 가능한지 어떤 네트워크를 쓰고 있는지 확인하기위해선 스마트폰 정보를 구해야합니다. - 네트워크 정보 구하기 스마트폰의 네트워크를 알아볼때에는 ConnectivityManager를 사용하고 어떤 네트워크에 있는지를 알아보기 위해서는 ConnectivityManager의 getActivityNetwork() 함수로 Network 객체를 얻어서 이용합니다. ConnectivityManager을 사용하려면 다음 퍼미션을 선언해야합니다. 그런다음 퍼미션을 요구하는 코드를 짜줍니다. //in oncreate code val status = ContextCompat.ch..
- 메일 서버 지금까지 저는 웹서버와 dns서버를 만들었습니다. 이제 메일 서버를 만들어보려합니다. os는 centos8을 사용했고 sendmail과 dovecot을 이용해서 smtp와 pop 프로토콜을 구현하였습니다. 클라이언트는 thunderbird를 이용했습니다. - 구축 자료 아래는 메일서버 10장의 1교시입니다. 실제 구축을 위해서는 1,2,3교시 모두 봐야합니다. https://youtu.be/geEY61r89OQ - 실제 구축 네트워크 구조 - 실제 구축 dns $TTL 3H @ SOA @ root ( 2 1D 1H 1W 1H ) IN NS @ IN A 182.227.**.** IN MX 10 mail.nova-server.site www IN A 182.227.**.** mail IN A ..
- 개요 여러개의 서버를 만들기 위해서는 꼭 필요한게 DNS 서버입니다. 실제로 Mail서버를 구축하기위해서는 DNS서버가 꼭 필요합니다. 따라서 저는 저의 서버 네트워크에 DNS 서버를 만들기로 했습니다. - DNS 서버 OS 구축 https://youtu.be/bLlbCq2dRgk 위 강의를 그대로 따라하시면 됩니다. 저의 경우에는 네트워크 어댑터를 Bridge로 해서 해당 실제 컴퓨터와 동일한 네트워크 상에 있게 만들었습니다. - DNS 서버 구축 밑의 링크는 9장 DNS서버에대한 1교시 영상입니다. 실제 DNS서버를 구축하기위해서는 1,2,3 교시 강의를 다 들어야합니다. 밑에 링크 접속후 찾아서 들으시면됩니다. https://youtu.be/DCaR-sSWdFk - 저의 실제 구축 네트워크 구조..
- 프리퍼런스 공유된 프리퍼런스는 플랫폼 API에서 제공하는 클래스로 데이터를 키-값 형태로 저장할때 사용합니다. 공유된 프리퍼런스는 앱의 간단한 데이터를 저장하는데 유용하며 내부적으로 내장 메모리의 앱 폴더에 XML 파일로 저장됩니다. 프리퍼런스는 액티비티단위로 만들거나 앱 전체의 프리퍼런스로 만들 수 있습니다. - 메인액티비티에서 프리퍼런스를 이용해 데이터 저장 및 가져오기 메인 액티비티에서 프리퍼런스 저장소를 얻는 방법은 아래와 같습니다. Activity.getPreference(int mode) Context.getSharedPreferences(String name, int mode) 첫번째는 액티비티단위로 데이터를 저장할때 호출하며 아래는 앱 전체의 프리퍼런스를 얻어올때 사용합니다. 이 장에서..
- server signature vulnerability 서버에게 http 통신을 하게되면 http 헤더에는 기본적으로 서버의 정보가 담기게됩니다. 서버의 정보를 알 수 있는 공격자는 버전에따른 취약점을 사용해서 공격할 수 있기때문에 위험합니다. 따라서 서버의 정보를 주지않는 것이 좋습니다. - 벙어 대책 httpd.conf 파일 맨 밑에 아래 구문을 추가해줍니다. ServerSignature Off ServerTokens Prod - 방어 확인 실제 방어가 잘 되었는지 확인하기 위해 접속해줍니다. 아파치만 보이고 php나 버전등은 확인할 수 없습니다.
- 내장 메모리와 외장메모리 안드로이드에서 파이저장소는 내장 메모리와 외장메모리 공간으로 구분됩니다. 외장 메모리 공간은 다시 앱별 저장소와 공용저장소로 나뉩니다. 앱별 저장소에는 다른 앱이 접근할 수 없지만 공용 저장소에는 다른 앱이 접근할 수 있습니다. - 내장 메모리의 파일 이용하기 내장메모리는 앱이 설치되면 시스템에서 자동으로 할당해줍니다. 안드로이드 시스템에서는 앱에서 파일을 이용하지않더라도 앱의 패키지명으로 디렉터리를 만들어줍니다. 이 디렉터리가 앱의 내장 메모리공간입니다. 하지만 내장 메모리는 외장 메모리보다 용량이 작아서 크기가 큰 데이터는 외장 메모리를 이용해야합니다. test.txt파일을 만들고 helloworld를 입력한후 값을 가져와 액티비티에 뿌려주는 앱을 만들어보겠습니다. 아래는..
- php 다운로드 및 연동 https://windows.php.net/download/ PHP For Windows: Binaries and sources Releases PHP 8.0 (8.0.28) Download source code [23.47MB] Download tests package (phpt) [13.56MB] VS16 x64 Non Thread Safe (2023-Feb-14 12:39:52) Zip [25.53MB] sha256: 6bcd82934073488cc451f2f1658feedeb43ef5077e9ae7bcf354ae5c8ec69b4a Debug Pack [23.21MB] sha256: a147 windows.php.net 위 링크로 접속해주셔서 Thread Safe 부분의..