首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在android usb主机厂商id值中生成int值

如何在android usb主机厂商id值中生成int值
EN

Stack Overflow用户
提问于 2013-08-01 03:29:01
回答 2查看 2.3K关注 0票数 3

我的android应用程序使用USB主机API。我的代码遵循开发人员站点中所需的内容。现在我在device_filter.xml上有了问题,安卓不承认vendor-id="03eb"int

它给了我这个警告:

代码语言:javascript
复制
W/UsbSettingsManager( 1455): java.lang.NumberFormatException: Invalid int: "03eb"
W/UsbSettingsManager( 1455): at java.lang.Integer.invalidInt(Integer.java:138)
W/UsbSettingsManager( 1455): at java.lang.Integer.parse(Integer.java:375)

这是真的,但是我如何将它变成int in <usb-device vendor-id="03eb"

AndroidManifest.xml文件:

代码语言:javascript
复制
<activity
    android:name="com.example.usb.MainActivity"
    android:label="@string/app_name" >
    <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_DEVICE_ATTACHED" />
    </intent-filter>

    <meta-data
        android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
        android:resource="@xml/device_filter" />
</activity>

在device_filter.xml中

代码语言:javascript
复制
<resources>
    <usb-device vendor-id="03eb" product-id="6201" />
</resources>
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-17 00:53:23

供应商和产品ids必须是整数,但您要传递十六进制值。您可以简单地将十六进制转换为整数表示。看这个链接。这里是转换:

03eb -> 1003

6201 -> 25089

票数 3
EN

Stack Overflow用户

发布于 2021-09-01 11:27:24

您可以通过适当的表示法传递十六进制数:

代码语言:javascript
复制
<resources>
    <usb-device vendor-id="0x03eb" product-id="0x6201" />
</resources>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17984786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档