안드로이드 NFC기능

조회수 5124회

지금 현재로 안드로이드 메니페스트 파일에 NFC기능을 퍼미션주었는데 그럼 마켓에서 NFC기능이 없는 휴대폰의 경우에는 apk파일 자체를 다운을 못받는 현상이 발생합니다. NFC기능을 지원하지 않는폰의 경우 apk 파일을 받을려면 어떻게 진행하여야 할까요 NFC기능이 없는 폰은 QR코드로 어떠한 값을 읽으려고 합니다

1 답변

  • 좋아요

    2

    싫어요
    채택 취소하기

    매니패스트에 android:required="false"를 주시면 됩니다. required=false를 추가하면 안드로이드기기에 해당 기능이 없더라도 설치할 수 있게 됩니다.

    <!--매니페스트에 추가-->
    <uses-feature
        android:name="android.hardware.nfc"
        android:required="false" />
    <!--기존의 NFC 사용권한-->    
    <uses-permission
        android:name="android.permission.NFC" />
    
    
    /* 자바 코드 */
    NfcManager manager = 
        (NfcManager)context.getSystemService(Context.NFC_SERVICE);
    NfcAdapter adapter = manager.getDefaultAdapter();
    
    if (adapter != null && adapter.isEnabled()) {
        // nfc 이용하는 코드
    } else {
        // QR코드 이용하는 코드
    }
    
    • 답변 감사합니다. 근데 제가 여쭤보고 싶은건 NFC기능이 없는 폰인 경우 마켓에서 앱 파일 자체를 다운로드 못하는 경우가 생깁니다.(메니페스트에 NFC기능을 추가 하였을경우) 이 경우 마켓에서 앱 파일을 다운받고 퍼미션을 NFC기능을 사용할때 권한을 얻어 오는 방식으로 바꿀수 있는지 여쭤보고 싶습니다.(마쉬멜로 버전처럼 필요할때만 권한을 얻는것처럼) 손진우 2016.4.7 13:23
    • @손진우 매니패스트에 넣은 nfc권한에 required="false"를 넣어보세요. 알 수 없는 사용자 2016.4.7 14:46
    • 답변 내용을 조금 수정했습니다. uses-feature 와 uses-permission을 둘 다 사용해보세요. Eunseo Jang 2016.4.7 16:25
    • 감사합니다 손진우 2016.4.9 14:48

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)