0

我正在使用 Moto X 1st-gen 和 Galaxy S5 进行测试,开发一个 Android 应用程序来与自定义配件交互。在这两款手机上,当配件连接时,它不会提示用户启动应用程序,而是简单地显示带有配件公司徽标的灰色模式。奇怪的是,如果我安装了多个使用此附件过滤器的应用程序,则会弹出启动应用程序提示,如果我选择我的应用程序并通过提示启动它,它会按预期工作如果我选择“始终启动”然后卸载其他应用程序,它会按预期工作。但是如果我更新应用程序,问题就会重新出现。

我似乎找不到任何其他发生此问题的实例。我尝试更改意图过滤器绑定到的 Activity;没运气。

我已经像这样配置了 AndroidManifest:

<uses-sdk
    android:minSdkVersion="17"
    android:targetSdkVersion="19" />

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

...

<application>

  <uses-library android:name="com.android.future.usb.accessory" />

  ...

  <activity
      android:name=".activity.AccessoryActivity"
      android:label="@string/app_name"
      android:launchMode="singleTask"
      android:screenOrientation="portrait"
      >
      <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>
</application>

并像这样设置我的附件过滤器:

<resources>
    <usb-accessory manufacturer="My-Manufacturer" model="My-Model" version="1.0"/>
</resources>
4

1 回答 1

0

似乎发生这种行为是因为我在可绘制文件夹中使用了一个大的 PNG (671x725) 作为应用程序图标。当我开始以适当的 dpi 大小创建单个图标时,问题就消失了。我不知道为什么图标大小会对操作系统在附件连接上启动应用程序的能力有任何影响,但你去吧。

于 2015-04-21T20:32:21.710 回答