仅在应用程序未运行时才从intent启动活动

时间:2016-04-29 12:11:45

标签: android android-activity

我的应用程序有一个登录活动LoginActivity,我已经为它定义了一个intent过滤器,这样如果有人插入USB设备,就会启动LoginActivity。这种情况很好。

代码:

<activity
    android:name=".main.login.LoginActivity"
    ...
    >
  <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>

但是,当应用程序运行时,会发生这种情况: 我正在连接USB设备并被“重定向”到登录屏幕(LoginActivity)。在这种情况下,我不想发起新活动。

我该怎样做才能获得想要的行为?

2 个答案:

答案 0 :(得分:0)

将此添加到您在AndroidManifest.xml中的活动中:

jna-platform

https://developer.android.com/guide/topics/manifest/activity-element.html#lmode

答案 1 :(得分:-1)

你应该像下面那样放置意图过滤器而不是你的代码。

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

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