自动发帖软件

标题: AIWROK软件HID_APK插件_安卓原生调用方法 [打印本页]

作者: 发帖软件    时间: 9 小时前
标题: AIWROK软件HID_APK插件_安卓原生调用方法
AIWROK软件HID_APK插件_安卓原生调用方法

本插件可以使用安卓原生开发调用,具体方法如下
1.
下载apk插件
2.
放到项目asset文件夹下
https://cdn.nlark.com/yuque/0/2025/png/44811133/1749729107649-34dafe79-040b-41e7-b30c-3c45e341adeb.png
3.AndroidManifest.xml
文件中添加权限

<uses-permission android:name="android.permission.INTERNET" ></uses>

<uses-permission android:name="android.permission.FOREGROUND_SERVICE" ></uses>

 

<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" ></uses>

 

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"></uses>

 

<uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" ></uses>

<!-- 声明权限 -->

<uses-permission android:name="android.permission.BIND_WALLPAPER" ></uses>

 

<uses-feature android:name="android.hardware.usb.accessory" ></uses>

 

<uses-permission android:name="android.permission.USB_PERMISSION" ></uses> <!-- 添加USB权限 -->

<uses-feature android:name="android.hardware.usb.host" ></uses>

 

<!-- Request legacy Bluetooth permissions on older devices. -->

<uses-permission android:name="android.permission.BLUETOOTH" ></uses>

<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" ></uses>

<!-- Needed only if your app looks for Bluetooth devices.

     You must add an attribute to this permission, or declare the

     ACCESS_FINE_LOCATION permission, depending on the results when you

     check location usage in your app. -->

<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" ></uses>

<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" ></uses>

<uses-permission android:name="android.permission.BLUETOOTH_SCAN" ></uses>

<!-- Needed only if your app makes the device discoverable to Bluetooth

     devices. -->

<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" ></uses>

<!-- Needed only if your app communicates with already-paired Bluetooth

     devices. -->

<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" ></uses>

 

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" ></uses>

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" ></uses>

 

<uses-permission android:name="android.permission.BLUETOOTH_SCAN" ></uses>

具体说明如下:

1.  <uses-permission android:name="android.permission.INTERNET" ></uses>:声明应用需要访问互联网的权限。

2.  <uses-permission android:name="android.permission.FOREGROUND_SERVICE" ></uses>:允许应用在前台运行服务。

3.  <uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" ></uses>:请求忽略电池优化的权限,以便应用在后台运行时不会被系统电池优化功能所限制。

4.  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"></uses>:允许应用在其他应用的窗口之上显示系统级的窗口。

5.  <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" ></uses>:允许应用使用内部系统窗口,通常用于创建系统级别的UI组件,但需要注意的是,此权限并不是官方公开的权限,普通应用不建议使用,需确保其合法性。

6.  <uses-permission android:name="android.permission.BIND_WALLPAPER" ></uses>:允许应用绑定为壁纸服务。

7.  <uses-feature android:name="android.hardware.usb.accessory" ></uses>:声明应用需要访问USB配件的功能。

8.  <uses-permission android:name="android.permission.USB_PERMISSION" ></uses>:请求USB设备的权限。

9.  <uses-feature android:name="android.hardware.usb.host" ></uses>:声明应用需要作为USB主机的功能,可以连接并控制外接USB设备。

10.<uses-permission android:name="android.permission.BLUETOOTH" ></uses>:允许应用进行基本的蓝牙操作。

11.<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" ></uses>:允许应用配置蓝牙设置和管理蓝牙设备。

12.<uses-permission android:name="android.permission.BLUETOOTH_CONNECT" ></uses>:允许应用连接到蓝牙设备。

13.<uses-permission android:name="android.permission.BLUETOOTH_SCAN" ></uses>:允许应用扫描周围的蓝牙设备。

14.<uses-permission android:name="android.permission.BLUETOOTH_ADVERTISE" ></uses>:允许应用使设备可被其他蓝牙设备发现。

15.<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" ></uses>:允许应用访问大致位置信息,用于发现蓝牙设备。

16.<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" ></uses>:允许应用访问精确位置信息,同样用于发现蓝牙设备。

4.把这个xml文件添加到xml文件夹中accessory_filter.xml

<?xml version="1.0" encoding="utf-8"?>

<resources>

    <usb-accessory manufacturer="aiwork" model="hid" version="2.0" />

</resources>

https://cdn.nlark.com/yuque/0/2025/png/44811133/1749729122306-bf034155-178d-4ca2-b776-a456d76a85b3.png
5.
AndroidManifest.xml  mainActivity中添加以下代码

<activity

    android:name=".MainActivity"

    android:exported="true">

    <intent-filter>

        <action android:name="android.intent.action.MAIN" />

 

        <category android:name="android.intent.category.LAUNCHER" />

    </intent-filter>

 

    <intent-filter>

        <action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />

    </intent-filter>

 

    <meta-data

        android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED"

        android:resource="@xml/accessory_filter" />

</activity> <!-- 注册USB设备连接和断开的广播接收器 -->

具体说明如下:

<activity

    android:name=".MainActivity"

    android:exported="true">

    <intent-filter>

        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />

    </intent-filter>

    <intent-filter>

        <action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />

    </intent-filter>

    <meta-data

        android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED"

        android:resource="@xml/accessory_filter" />

</activity>

 

1.  <activity android:name=".MainActivity" android:exported="true">声明一个名为MainActivity的活动(Activity),android:name=".MainActivity"指定了活动的类名,.MainActivity表示该活动位于应用的根包中。android:exported="true"表示该活动可以被其他应用启动。

2.  <intent-filter>用于定义该活动可以响应的Intent。每个<intent-filter>可以包含<action><category><data>等子元素,用以指定活动能够处理的Intent类型。

o   第一个<intent-filter>:

<intent-filter>

    <action android:name="android.intent.action.MAIN" />

    <category android:name="android.intent.category.LAUNCHER" />

</intent-filter>

 

这个intent-filter定义了该活动作为应用的入口点。<action android:name="android.intent.action.MAIN" />表示该活动是应用的主要活动。<category android:name="android.intent.category.LAUNCHER" />表示该活动可以在应用启动器中启动,即它会出现在应用的快捷方式或图标上,让用户可以点击启动应用。

o   第二个<intent-filter>:

<intent-filter>

    <action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />

</intent-filter>

 

这个intent-filter定义了该活动可以响应USB配件连接的Intent<action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" />表示该活动会在USB配件连接到设备时被触发。

3.  <meta-data>用于为该活动提供额外的信息。在这个例子中,<meta-data>用于指定USB配件的过滤器配置文件。

o   <meta-data android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" android:resource="@xml/accessory_filter" />这个meta-data标签指定了当USB配件连接时,系统会根据@xml/accessory_filter文件中的配置来决定是否将该Intent发送给MainActivity@xml/accessory_filter是一个XML资源文件,定义了应用可以兼容的USB配件的属性(如制造商、产品ID等),当设备检测到符合这些属性的USB配件连接时,会将USB_ACCESSORY_ATTACHEDIntent发送给MainActivity

总结:这段代码声明了一个名为MainActivity的活动,并将其设置为应用的入口点,使其可以在设备的启动器中显示。此外,它还声明了MainActivity可以响应USB配件连接的事件,并通过meta-data标签指定了一个XML配置文件,用于定义应用可以兼容的USB配件的具体属性。







欢迎光临 自动发帖软件 (http://www.fatiegongju.com/) Powered by Discuz! X3.2