From 526138394ee77759e98764153b851acfe6c929af Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期一, 11 十二月 2023 16:33:19 +0800 Subject: [PATCH] 添加震动和声音提示 --- app/src/main/AndroidManifest.xml | 5 +++-- local.properties | 4 ++-- app/src/main/java/com/dayu/recharge/tools/LoyaltyCardReader.java | 46 +++++++++++++++++++++++++++++++++++++++++----- 3 files changed, 46 insertions(+), 9 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 39721f4..6ef8a0f 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -32,7 +32,8 @@ <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> <!--鐢ㄤ簬鐢宠璋冪敤A-GPS妯″潡--> <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission> - + <!--鐢ㄤ簬鐢宠璋冪敤闇囧姩妯″潡--> + <uses-permission android:name="android.permission.VIBRATE" /> <application android:name=".MyApplication" android:allowBackup="true" @@ -93,7 +94,7 @@ android:launchMode="singleTop"> <intent-filter> <action android:name="android.nfc.action.ACTION_NDEF_DISCOVERED" /> - <category android:name="android.intent.category.DEFAULT"/> + <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="text/plain" /> </intent-filter> </activity> diff --git a/app/src/main/java/com/dayu/recharge/tools/LoyaltyCardReader.java b/app/src/main/java/com/dayu/recharge/tools/LoyaltyCardReader.java index 8e8fedd..4d048cb 100644 --- a/app/src/main/java/com/dayu/recharge/tools/LoyaltyCardReader.java +++ b/app/src/main/java/com/dayu/recharge/tools/LoyaltyCardReader.java @@ -17,11 +17,16 @@ import android.annotation.TargetApi; import android.app.Activity; +import android.content.Context; +import android.media.Ringtone; +import android.media.RingtoneManager; +import android.net.Uri; import android.nfc.NfcAdapter; import android.nfc.Tag; import android.nfc.tech.IsoDep; import android.nfc.tech.MifareClassic; import android.os.Build; +import android.os.Vibrator; import android.util.Log; @@ -73,17 +78,21 @@ */ @Override public void onTagDiscovered(Tag tag) { + +// playSystemDefaultSound(); + palyVibrator(); + Log.i(TAG, "New tag discovered"); - MifareClassic mifareClassic= MifareClassic.get(tag); + MifareClassic mifareClassic = MifareClassic.get(tag); //鏅�歁1鍗� - if (mifareClassic!=null){ + if (mifareClassic != null) { mActivity.runOnUiThread(new Runnable() { @Override public void run() { mAccountCallback.physicalCardDoing(tag); } }); - }else { + } else { // Android 鐨勫熀浜庝富鏈虹殑鍗′豢鐪� 锛圚CE锛� 鍔熻兘瀹炵幇浜� ISO-DEP 锛圛SO 14443-4锛� 鍗忚銆備负浜嗕娇鐢� HCE 涓庤澶囬�氫俊锛屽簲浣跨敤 IsoDep 绫诲鐞嗗彂鐜扮殑鏍囪銆� IsoDep isoDep = IsoDep.get(tag); if (isoDep != null) { @@ -118,8 +127,6 @@ } } } - - } @@ -172,4 +179,33 @@ return data; } + + /** + * 闇囧姩 + */ + private void palyVibrator() { + // 鑾峰彇 Vibrator 瀹炰緥锛堥渿鍔ㄥ姛鑳�) + Vibrator vibrator = (Vibrator) mActivity.getSystemService(Context.VIBRATOR_SERVICE); + // 闇囧姩 1000 姣锛�1 绉掞級 + if (vibrator != null) { + vibrator.vibrate(10000); + } + } + + /** + * 鎾斁榛樿鎻愮ず闊� + */ + private void playSystemDefaultSound() { + // 鑾峰彇榛樿鎻愮ず闊崇殑URI + Uri defaultRingtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); + + // 鍒涘缓Ringtone瀵硅薄 + Ringtone ringtone = RingtoneManager.getRingtone(mActivity, defaultRingtoneUri); + + // 鎾斁鎻愮ず闊� + if (ringtone != null) { + ringtone.play(); + } + } + } diff --git a/local.properties b/local.properties index f059514..0ac6c9a 100644 --- a/local.properties +++ b/local.properties @@ -4,5 +4,5 @@ # Location of the SDK. This is only used by Gradle. # For customization when using a Version Control System, please read the # header note. -#Sat Nov 11 20:12:34 CST 2023 -sdk.dir=D\:\\AndroidStudio\\sdk +#Fri Dec 08 14:26:41 CST 2023 +sdk.dir=D\:\\sdk -- Gitblit v1.8.0