메뉴 건너뛰기

조회 수 8980 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

안드로이드마켓에 있는 AIDE를 이용해서 앱을 만들어봤습니다.


후라시 앱 만들어봤습니다.
후라시 앱이 하도 악성코드 심어져있는게 많아서 함 만들어봤습니다.
설치할때 카메라 제어 권한이 필요한데, 그건 후라시앱에서는 꼭 필요하니 걱정하지들 마시길..
초간단 기능..
함 써보세들~

https://play.google.com/store/apps/details?id=com.kongmemo.app

초간단 후레쉬-광고없음, 악성코드없음 보장 - Google Play의 Android 앱
play.google.com
본문으로 이동



소스코드는 다음과 같습니다.

MainActivity.java

package com.kongmemo.app;

import android.app.*;
import android.hardware.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import java.util.*;

public class MainActivity extends Activity implements View.OnClickListener // 버튼클릭을 이 Activity에서 처리하기 위해 OnClickListener 인터페이스를 따름
{
private Camera camera; // 카메라객체
private Camera.Parameters p; // 카메라파라미터

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
{
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
Button btn_switch = (Button)findViewById(R.id.btn_switch); // 리소스 버튼
btn_switch.setOnClickListener(this); // 현재 액티비티를 리스너로 설정
btn_switch.setTag(1); // 켜짐과 꺼짐 상태를 판단하기 위해 tag 속성 이용(1이 켜진 상태, 0이 꺼진상태)
setLight(true); // 앱 실행하자마자 켜지도록 함
    }

@Override
protected void onPause() // 앱이 중단된 상태(홈버튼 눌러 내려간 상태)에는 후라시를 끔
{
// TODO: Implement this method
Button btn = (Button)findViewById(R.id.btn_switch);
int tag =btn.getTag();

if ( tag == 1 ) // 켜진 상태라면 후라시를 끔
{
btn.setTag(0);
setLight(false);
}

super.onPause();
}

@Override
protected void onResume() // 앱이 다시 활성화된 경우 후라시를 켜줌
{
// TODO: Implement this method
Button btn = (Button)findViewById(R.id.btn_switch);
int tag =btn.getTag();

if ( tag == 0 )
{
btn.setTag(1);
setLight(true);
}

super.onResume();
}


private void setLight(boolean ison)
{
if (ison)
{
camera = Camera.open(); // 카메라 객체 얻어옴
p = camera.getParameters(); // 현재의 카메라 상태 얻어옴
p.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); // 후라시를 켜는 상태로 변경
camera.setParameters(p); //후라시 상태를 카메라객체에 적용
camera.startPreview(); // 카메라상태에 맞게 카메라를 동작
}
else
{
p.setFlashMode(Camera.Parameters.FLASH_MODE_OFF); //후라시 상태를 꺼진 상태로 변경
camera.setParameters(p); // 후라시 상태를 카메라객체에 적용
camera.stopPreview();//카메라상태에 맞게 카메라 중지
camera.release(); // 카메라객체를 release 해줌
}

}
@Override
public void onClick(View p1)
{
// TODO: Implement this metho
Button btn = (Button)p1;
int tag =btn.getTag();
tag = tag==1 ? 0 : 1; // 버튼클릭시 켜짐/꺼짐 상태를 토글시켜줌
btn.setTag(tag);
setLight(tag==1); // 토글된 상태에 맞게 카메라 조작
}

}

------------------------------------------------------------

main.xml ( 버튼 하나만 커다랗게 띄운다 )


<?xml version="1.0" encoding="utf-8"?>
< LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:orientation="vertical">

< Button
android:layout_height="match_parent"
android:text="ON / OFF"
android:layout_width="match_parent"
android:id="@+id/btn_switch"/>

< /LinearLayout>
-----------------------------------------------------------------

AndroidManifest.xml ( 카메라 권한을 준다. 그리고, 세로방향으로만 되도록 한다.)


<?xml version="1.0" encoding="utf-8"?>
< manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kongmemo.app"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="21" />
< uses-permission android:name="android.permission.CAMERA"/>
    <uses-feature android:name="android.hardware.camera"/>

< application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:label="@string/app_name"
            android:name=".MainActivity"

            android:screenOrientation="portrait" >
            <intent-filter >
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

< /manifest>


List of Articles
번호 제목 날짜 조회 수
257 버튼 이벤트 추가하기 file 2021.03.31 195
256 안드로이드 스튜디오 - 필수 재정의 함수 자동 코드 추가 file 2021.03.29 195
255 버튼 이벤트 file 2021.03.31 210
254 안드로이드 액티비티 세로고정 2021.09.14 215
253 안드로이드 - 컨텍스트 메뉴(Context Menu) 사용 예제 file 2021.04.01 215
252 안드로이드 - 인텐트(Intent)를 활용한 액티비티(Activity) 생성 및 실행하기 file 2021.03.31 223
251 안드로이드 - 액티비티(Activity)와 액티비티 생명 주기(Activity Life Cycle) file 2021.04.01 226
250 안드로이드 가상머신 실행 속도 빠르게 하기 file 2021.03.31 229
249 안드로이드 - setContentView()와 레이아웃 전개자(LayoutInflater) 2021.04.01 229
248 버튼 생성, 이벤트 처리 file 2021.03.31 237
247 안드로이드 - 스타일 리소스(Style Resource) 사용하기 <style> file 2021.03.31 241
246 This Handler class should be static or leaks might occur 시 해결법 2020.12.14 242
245 안드로이드 - 랠러티브 레이아웃(Relative Layout) file 2021.03.29 242
244 Fragment를 통한 하단탭 예제1 file 2020.12.14 244
243 App 실행 file 2021.03.31 247
242 안드로이드 - SQLiteDatabase 구현하기 file 2021.04.01 252
241 Virtual Device , 디자인 화면 file 2021.03.31 264
240 setContentView()와 레이아웃 전개자(LayoutInflater) 2021.03.31 269
239 안드로이드 - Serializable를 활용한 다른 액티비티에 객체(Object) 전달하기 file 2021.03.31 283
238 안드로이드 - 문자열 리소스를 활용한 다국어 지원 file 2021.03.31 286
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved