Skip to content

Commit 6f6d59e

Browse files
committed
扫码功能增加
1 parent 71e5b4f commit 6f6d59e

File tree

14 files changed

+212
-112
lines changed

14 files changed

+212
-112
lines changed

sdkdemo/build.gradle

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,18 @@ dependencies {
105105
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
106106
implementation 'com.squareup.picasso:picasso:2.71828'
107107
implementation 'com.squareup.okhttp3:okhttp:3.0.1'
108+
109+
// Google ML Kit for QR code scanning
110+
implementation 'com.google.mlkit:barcode-scanning:17.2.0'
111+
implementation 'com.google.android.gms:play-services-mlkit-barcode-scanning:18.3.0'
112+
113+
// CameraX dependencies - using stable version combination
114+
def camerax_version = "1.2.1"
115+
implementation "androidx.camera:camera-core:${camerax_version}"
116+
implementation "androidx.camera:camera-camera2:${camerax_version}"
117+
implementation "androidx.camera:camera-lifecycle:${camerax_version}"
118+
implementation "androidx.camera:camera-view:${camerax_version}"
119+
108120
testImplementation 'junit:junit:4.+'
109121
testImplementation 'org.robolectric:robolectric:4.5.1'
110122
testImplementation ('org.bouncycastle:bcprov-jdk15on') {

sdkdemo/src/main/AndroidManifest.xml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,19 +84,26 @@
8484
<activity android:name="com.tencent.iot.explorer.link.rtc.ui.audiocall.TRTCAudioCallActivity" />
8585
<activity android:name="com.tencent.iot.explorer.link.rtc.ui.videocall.TRTCVideoCallActivity" />
8686
<!-- <activity android:name=".core.activity.LoginActivity" />-->
87-
<activity android:name=".core.activity.LoginActivity">
87+
<activity android:name=".core.activity.LoginActivity"
88+
android:exported="true">
8889
<intent-filter>
8990
<action android:name="android.intent.action.MAIN" />
9091

9192
<category android:name="android.intent.category.LAUNCHER" />
9293
</intent-filter>
9394
</activity>
94-
<activity android:name=".core.activity.MainActivity">
95+
<activity android:name=".core.activity.MainActivity"
96+
android:exported="true">
9597
<intent-filter>
9698
<action android:name="android.intent.action.VIEW" />
9799
</intent-filter>
98100
</activity>
99-
<activity android:name=".core.activity.AddDeviceActivity" />
101+
<activity android:name=".core.activity.AddDeviceActivity"
102+
android:exported="false"/>
103+
<activity
104+
android:name=".core.activity.QRCodeScannerActivity"
105+
android:configChanges="orientation|keyboardHidden|screenSize"
106+
android:theme="@style/AppTheme" />
100107

101108
<activity
102109
android:name=".core.wxapi.WXEntryActivity"

sdkdemo/src/main/java/com/tencent/iot/explorer/link/demo/core/activity/AddDeviceActivity.kt

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,11 @@ package com.tencent.iot.explorer.link.demo.core.activity
33
import android.Manifest
44
import android.content.Intent
55
import android.content.pm.PackageManager
6-
import android.os.Bundle
76
import android.text.TextUtils
87
import android.widget.Toast
98
import androidx.core.app.ActivityCompat
109
import androidx.core.content.ContextCompat
1110
import com.tencent.iot.explorer.link.demo.BaseActivity
12-
import com.tencent.iot.explorer.link.demo.R
1311
import com.tencent.iot.explorer.link.demo.databinding.ActivityAddDeviceBinding
1412

1513
/**
@@ -85,11 +83,9 @@ class AddDeviceActivity : BaseActivity<ActivityAddDeviceBinding>() {
8583
* 启动二维码扫描器
8684
*/
8785
private fun launchQRCodeScanner() {
88-
// TODO: 实现二维码扫描功能
89-
// 这里应该启动一个二维码扫描Activity或使用第三方库
90-
91-
// 临时实现:模拟扫描结果
92-
simulateQRCodeScan()
86+
// 启动二维码扫描Activity
87+
val intent = Intent(this, QRCodeScannerActivity::class.java)
88+
startActivityForResult(intent, REQUEST_SCAN_QR_CODE)
9389
}
9490

9591
/**
@@ -205,7 +201,7 @@ class AddDeviceActivity : BaseActivity<ActivityAddDeviceBinding>() {
205201
* 处理二维码扫描结果
206202
*/
207203
private fun handleQRCodeResult(data: Intent?) {
208-
// TODO: 从Intent中获取二维码扫描结果
204+
// 从Intent中获取二维码扫描结果
209205
val qrCodeResult = data?.getStringExtra("QR_CODE_RESULT") ?: ""
210206

211207
if (qrCodeResult.isNotEmpty()) {
@@ -276,4 +272,4 @@ class AddDeviceActivity : BaseActivity<ActivityAddDeviceBinding>() {
276272
// 临时实现:直接返回
277273
super.onBackPressed()
278274
}
279-
}
275+
}

0 commit comments

Comments
 (0)