-
Android 2017‧12‧07
mediaPlayer 재생 완료 이벤트 받기
미디어플레이어 재생이 끝나고 다음 함수를 실행하거나 할 때 요긴하게 쓰인다. MediaPlayer.setOnCompletionListener 를 이용해서 만들면 된다. 상단에 미디어 플레이어 import 코드를 넣어주고 import android.media.MediaPlayer; activity class 안에 미디어 플레이어를 아래 예제처럼 MediaPlayer mPlayer; 를 추가해준다. public class SubActivity extends AppCompatActivity implements SurfaceHolder.Callback{ MediaPlayer mPlayer; 이제 미디어플레이어를 불러오는 곳에서 아래 코드를 작성한다. mPlayer = new MediaPlayer(); […]
-
Android 2017‧12‧01
서비스에서 다른 Activity(.java) 안의 method 호출 (브로드 캐스트)
java > 서비스로 작동하는 .java 파일을 열어서 아래 코드를 상단에 넣어 임포트 시켜준다. import android.content.Intent; import android.support.v4.content.LocalBroadcastManager; 그리고 public class MyService extends Service{ 이렇게 보이는 서비스 클래스 안에 아래 코드를 넣어준다. //브로드 캐스트 보내기 private void sendMessage() { Intent intent = new Intent("naminsik"); intent.putExtra("message", "전달하고자 하는 데이터"); LocalBroadcastManager.getInstance(this).sendBroadcast(intent); } 위에 보면 "naminsik" 은 통로 같은 […]
-
Android 2017‧11‧30
디바이스 현재 아이피 주소 가져오기
내가 현재 부여받은 네트워크의 아이피를 보려고 할 때 java > MainActivity.java 에 class MainActivity 안에 아래 코드를 넣어준다. public static String getLocalIpAddress() { try { for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements();) { NetworkInterface intf = en.nextElement(); for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements();) { InetAddress inetAddress = enumIpAddr.nextElement(); if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet4Address) { return […]
-
Android 2017‧11‧29
화면 안꺼지게 설정
여러가지 방법이 있긴 한데 난 해당 res > layout > 해당.xml에 <android.support.constraint.ConstraintLayout/> 여기에 android:keepScreenOn="true"로 속성을 넣어준다. 예제는 아래와 같다. <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.insiknam.test.MainActivity" android:keepScreenOn="true"> 이보다 좋은 방법이나 여러가지 상황에 따라 선택해서 쓰면 된다. 그 여러가지 방법은 https://medium.com/marojuns-android/keeping-the-device-awake-b22b402a7f5e 이 곳에 아주 훌륭하게 정리해 놓으셨다.
-
Wish become to creative developer with new intelligent and experienceWish become to creative developer with new intelligent and experience
-
Android 2017‧11‧29
입력폼 Edit Text에 수정 안되게 하기
안드로이드 만들 때 텍스트 입력 폼을 <Edit Text/>를 이용해서 만든다. 그런데 가끔 readonly, 즉 수정 불가의 입력칸을 만들고 그 곳에 어플에서 만들어진 값을 노출하고 싶을 때가 있다. res > layout > 해당.xml 파일을 열어서 Edit Text에 android:focusableInTouchMode="false" 를 추가해 준다. 아래는 예제이다. <EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/deviceip" android:textSize="16dp" android:textStyle="bold" android:focusableInTouchMode="false"/>
-
Android 2017‧11‧14
안드로이드 프로젝트 안에 미디어 파일을 넣고 경로 불러오기
안드로이드 스튜디오에서 패키지에 미디어 파일들을 넣고 코드로 파일 경로 불러올 때가 있다. 일단 res 폴더안에 raw가 없을 건데 raw 폴더는 새로 만든다. https://www.google.co.kr/search?q=android+studio+create+raw+folder&dcr=0&source=lnms&tbm=isch&sa=X&ved=0ahUKEwi6hrvevb3XAhULI5QKHdHGC7oQ_AUICygC&biw=1508&bih=918 어렵지 않은 거라 구글링에도 참 많이 나온다. 그런 후에 raw 폴더에 마우스 오른쪽 누르면 Show in Explorer 있을 것이고 누르면 윈도우 탐색기가 열린다. 그 안에 미디어 파일들을 넣으면 안드로이드 스튜디오에서도 들어간게 보인다. […]
-
Android 2017‧11‧14
안드로이드 Socket.io 소켓통신 하기
서버쪽이 이미 구성되어 있다는 가정으로 정리한 코드이다. 일단 안드로이드 스튜디오에서 socket.io 를 추가한다. 모듈로 추가하는 방법은 http://bongsunga.com/blog/3640 여기에 써 놓았다. 그럼 본격적으로 코드를 작성한다. AndroidManifest.xml 안에 <manifest> 안에 아래 코드를 넣어준다. <uses-permission android:name="android.permission.INTERNET" /> 아래 코드들을 MainActivity.java 에 작성하는 코드이다. 상단에 임포트 코드를 넣어준다. import com.github.nkzawa.emitter.Emitter; import com.github.nkzawa.socketio.client.IO; import com.github.nkzawa.socketio.client.Socket; 그런 후에 public class MainActivity extends […]
-
Android 2017‧11‧14
내부 저장소 파일 경로 사용하기
스마트폰을 PC에 연결하여 윈도우 탐색기에서 스마트폰의 내부 저장소에 파일을 넣어두고, 어플리케이션에서 해당 파일을 재생하거나 불러올 때 내부 저장소 경로는 아래와 같이 불러온다. Uri video = Uri.parse(Environment.getExternalStorageDirectory() + "파일명"); 혹은 폴더안에 넣어놓아서 폴더안의 영상을 불러오려면 아래 예제처럼 불러와도 된다. Uri video = Uri.parse(Environment.getExternalStorageDirectory() + "/DCIM/intro.mp4"); 안드로이드 업데이트 이 후로 위 코드만으로 제대로 불러와지지 않으면 아래 포스팅을 […]
-
Android 2017‧11‧08
SurfaceView를 이용한 비디오 플레이어 만들기 코드
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <SurfaceView android:id="@+id/surfaceView1" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout> In the MainAcitivity class, in the onCreate method, you write code to create a reference to SurfaceView, get the surface holder, add Callback interface to the holder, and create MediaPlayer instance. In the onSurfaceCreate method (you need […]
-
nis@naminsik.com (ง •̀_•́)ง facebook.com/kisniman instagram(@kisniman) ฅ•ܫ•ฅnis@naminsik.com (ง •̀_•́)ง facebook.com/kisniman instagram(@kisniman) ฅ•ܫ•ฅ