【问题标题】:Start the wrong activity in Android project在 Android 项目中启动错误的活动
【发布时间】:2014-12-28 14:15:55
【问题描述】:

我有 2 个应用程序,它们将使用第 3 个推送通知 SDK 相互通信。

第一步: 在 APP1 活动A(MAIN和启动器)->启动活动B(A中的this.finish())->按主页按钮

第二步: 在 APP2 使用 SDK 向 APP1 发送消息

第三步(): 在 APP1 中: APP1 中的活动 A 开始 和 APP1的接收方收到了msg。

    <activity
        android:name=".ActivityA"
        android:screenOrientation="portrait"
        android:windowSoftInputMode="adjustResize|stateVisible" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

我的问题:为什么要启动 Activity A?

但是当我使用 SDK 的测试网页向 APP1 发送 msg 时,ActivityA 没有启动。

【问题讨论】:

  • 这远不是很清楚,您是在问为什么活动 A 启动或 A 没有启动。无论如何,如果问题是为什么当您的 APP1 接收器收到消息时没有启动 Activity A,那么这个清单 sn-p 与它无关,因为您应该在接收器代码中启动一个 INTENT 活动。

标签: android android-activity broadcastreceiver


【解决方案1】:

因为您的通知。例如,这是一种类似于 WhatsApp 应用程序中的行为:由于 WhatsApp 应用程序不断轮询其服务器以获取新消息是不可行的,他们所做的就是让其服务器在有新消息时向相应的设备发送通知消息,唤醒设备中的应用程序,以便它可以向服务器请求新消息。

编辑:关于如何从 APP2 发送通知以及如何在 APP1 中接收通知的代码会有所帮助(我认为你可能在双方都做错了)。

【讨论】:

  • 感谢您的建议。最后发现第三个推送通知SDK启动了错误的activity。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-01
  • 2012-07-23
相关资源
最近更新 更多