Android에서 애플리케이션을 만들었습니다. 주요 목표는 다음과 같습니다. 사용자가 Google 계정으로 로그인하고 NFC 태그를 스캔하며 발리 라이브러리를 사용하여 서버에 사용자 로그인 및 태그 정보를 보내고 응답을받습니다.
Android 스튜디오와 USB 디버깅을 사용할 때 모든 것이 잘 작동했습니다. 앱을 Google Play 스토어에 설치했는데 내 p9 lite 또는 NFC가있는 다른 휴대 전화와 호환되지 않습니다. 그래서 나는 심지어 앱을 다운로드 할 수 없습니다.
이것은 Google Play의 스크린 샷입니다.
여기 내 안드로이드 매니페스트가 있습니다 :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="some.package.name">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.NFC" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-feature android:name="android.nfc"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.nfc.action.NDEF_DISCOVERED" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<meta-data
android:name="android.nfc.action.TECH_DISCOVERED"
android:resource="@xml/nfc_tech_filter" />
</activity>
</application>
</manifest>
여기 내 gradle 빌드 프로젝트도 있습니다 :
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.1'
classpath 'com.google.gms:google-services:3.0.0'
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
그리고 gradle build app :
apply plugin: 'com.android.application'
android {
signingConfigs {
config {
keyAlias 'key0'
storeFile file('C:/AndroidKey/RandomKey.jks')
keyPassword 'randomKey'
storePassword 'randomPassword'
}
}
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "someId"
minSdkVersion 15
targetSdkVersion 25
versionCode 3
versionName "1.02"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
signingConfig signingConfigs.config
}
debug {
signingConfig signingConfigs.config
}
}
}
dependencies {
compile 'com.github.dmytrodanylyk.circular-progress-button:library:1.1.3'
compile 'com.android.volley:volley:1.0.0'
compile 'com.yarolegovich:lovely-dialog:1.0.5'
compile 'hanks.xyz:htextview-library:0.1.5'
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.google.android.gms:play-services-auth:9.8.0'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
모든 것이 USB로 잘 연결되어 있지만 Google Play 스토어에서 응용 프로그램을 다운로드 할 수도 없습니다.
이 경우 어떻게해야합니까? 감사합니다.
편집하다:
<uses-feature android:name="android.nfc"/>
를 변경했습니다
<uses-feature android:name="android.hardware.nfc"/>
까지
여전히 같은 상황 :
수정 : 내 기기에는 NFC가 있으며 옵션을 클릭하면 내 앱과 호환되는 기기를 표시 할 수 있습니다.
- 답변 # 1
- 답변 # 2
앱이 nfc 모듈이없는 기기에서 작동하는 경우
uses-feature
를 변경해야합니다 그런 식으로 :<uses-feature android:name="android.hardware.nfc" android:required="false" />
앱이 nfc 모듈이없는 기기에서 작동하지 않으면 nfc와 호환되는 기기가 있어야하고
uses-feature
를 변경해야합니다 그런 식으로 :<uses-feature android:name="android.hardware.nfc" />
- 답변 # 3
알겠습니다. 해결책을 찾았습니다. 모두에게 힌트를 주셔서 감사합니다. 답변이 명시되어 있지 않으므로 혼란스러운 질문에 대해 죄송합니다.
회사의 개인 앱저는 Google Play 개발자 콘솔의 관리자가 아니며 소유자는
와이즈 비즈따라서 회사 앱을 개발할 때이 옵션이 필요합니다. 도와 주셔서 감사합니다.
편집 : 또한 앱을 설치하려면 기기에 업무용 프로필이 있어야합니다. 지금 작동합니다.
- 답변 # 4
Allow users to update Google Play Private Channel
<uses-feature>
그렇습니다! 당신은 살 것이다!
<uses-feature android:name="android.hardware.nfc" android:required="false" />
관련 자료
- 안드로이드 장치에서 Nativescript 응용 프로그램 코드를 어떻게 복원합니까?
- Android 실제 기기 (react-native-firebase)에 표시되지 않는 AdMob 광고
- 내 안드로이드 응용 프로그램에서 저장하는 JPEG 이미지가 완전히 명확하지 않습니다
- 안드로이드 응용 프로그램 내장 웹 사이트를 확인하거나 찾는 방법
- java - 사용자가 Android 애플리케이션을 닫았는지 확인
- java - Android가 애플리케이션 A에서 애플리케이션 B로 알림 전송
- 응용 프로그램 비용을 지불하기 위해 장치 저장 카드 (ios 및 android)를 구현하는 방법은 무엇입니까?
- filesystems - android - /vendor 폴더에 기기에 남은 공간이 없습니다
- kotlin - Android 애플리케이션에서 한 활동에서 다른 활동으로 데이터를 전달하는 방법
- cordova - Android 기기에서 Angular 7로 오디오 사운드 재생
- javascript - 'LinkingopenURL ()'iOS에서 React Native를 완료로 사용하여 Android 기기에서 기본 메일을 여는 방법
- unity3d - Android 기기에서 프로파일 러 창에 연결할 수 없습니다
- APK 파일은 안드로이드 에뮬레이터에서 작동하지만 내 장치에 설치되지 않습니다
- reactjs - 가로 모드로 내 Android 애플리케이션 잠금
- python - 파일을 android 장치로 푸시하지만 파일이 비어 있습니다
- java - 알 수없는 소스에서 Android 애플리케이션 충돌
- 제거하지 않고 Android 애플리케이션 업데이트?
- 안드로이드 장치에서 이온 앱을 실행하는 데 오류가 발생했습니다
- java - Android Studio, 응용 프로그램을 실행할 때 시스템 오류
- dialogflow iframe 코드를 통해 안드로이드에서 "이 응용 프로그램은 자바 스크립트없이 작동하지 않습니다"
- android : Google Play 권한 문제
- Android Chrome에서 Chrome 인 텐트가 작동하지 않습니다.
- Android에서 URL 클릭시 앱을 실행하는 방법
- android : 앱 거부 됨-웹 사이트 Google Play의 뉴스 정책
- Android Mobile 및 Play 스토어 용 Android TV 앱에 동일한 패키지 이름을 사용할 수 있나요?
- Android-수동 제거 후 런처 아이콘이 다시 나타나지 않음
- android : 인앱 구매는 Play 스토어와 Play Console에 표시된 가격이 다릅니다.
- android : 앱 내에서 프로그래밍 방식으로 USB 디버깅 (설정 /애플리케이션 /개발 아래)을 활성화합니다.
- android : 여러 계정으로 인앱 구매
- android : Google Play Console에 내 앱이 백그라운드 위치 권한을 사용했지만 앱이 허용하지 않았다고 표시됩니다.
올바른 태그는
앱이 NFC 칩이없는 기기에서도 작동하는 경우
android:required="false"
를 추가해야합니다 위의 태그로 이동하십시오.