问题标签 [onnewintent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
184 浏览

android - 调用 onNewIntent 获取视图空指针异常

我的 Activity 启动模型:singleTop

在 onCreate 中:

在 onNewIntent 中:

但发生NullPointerException

有人可以给我一些想法来解决这个问题吗?代码类似:

0 投票
1 回答
3301 浏览

android - 活动不可见时未触发Android onNewIntent()

我有 2 个活动,第一个是 MainActivity。在第二个活动的清单启动模式设置为SingleInstance。 MainActivity 中的按钮启动 SecondActivity,它有一个触发通知的按钮。唯一的问题是SecondActivity不可见时不调用 SecondActivity 的onNewIntent()方法。为什么当应用程序处于后台或 SecondActivity 对用户不可见时不调用 onNewIntent() 方法?

代码:

显现:

爪哇:

MainActivity.java:

第二活动.java:

0 投票
2 回答
133 浏览

java - 如何阻止我的活动从共享菜单打开另一个应用程序中的另一个实例?

我的应用程序允许其他可以共享文件的应用程序在共享菜单上选择它,打开应用程序并将文件“传输”到我的应用程序。

我的问题是当他们从共享菜单中选择我的应用程序时(例如,在图库中,选择几张照片后,他们选择与我的应用程序共享)登录活动在图库应用程序中打开

请注意,我已经尝试过此过程适用于旧设备并且它有效,但不适用于较新的设备。

这是我的 manifest.xml

我有这个应用程序的两个活动,登录和主,如果登录成功,主将被加载。

我尝试了不同类型的启动器模式设置,但没有什么能阻止在图库中创建实例

这是来自我的登录活动

问题是,在旧设备上,onNewIntent 方法按预期调用,但在新设备上它只是忽略启动器模式并创建新实例并运行 onCreate()

关于如何让应用程序在从共享菜单调用时“强制”启动自己的任何想法?

当前测试设备 - 三星移动 Android 8.0,API 26 - 不工作三星平板电脑 Android 7.1.1,API 25 - 按预期工作

0 投票
0 回答
251 浏览

android - 如何忽略 NFC 意图(使手机不振动)?

我的代码中有一个活动,它有 2 个片段(徽标)和(配置)。当活动开始时,它会午餐 Logo Fragment 。当我得到一个新的 Intent(NFC Tag) 时,它会切换到 config Fragment 。当我在 config Fragment 和新的 NFC 标签接近时的问题,活动会响应并且设备会振动。

我需要什么,就在我在配置片段中时,手机不应该响应任何新标签并且不振动。

我试图设置标签,并测试我是否已经有标签不通过代码。

0 投票
1 回答
225 浏览

android - onNew 意图返回旧数据

我有一个通知屏幕。当收到通知并点击通知时,它将导航到特定屏幕。问题是当我在通知屏幕中并且我收到新通知时,新意图正在返回旧数据。我是从通知中获得的号码调用网络服务。因此我被卡住了。任何人都可以帮助我。下面是代码

并在 onNewIntent

0 投票
0 回答
282 浏览

android - android - 片段中的 NFC,在我从另一个活动返回后不会调用 onNewIntent

我有一个使用 NFC 的应用程序。我有一个扩展 BaseActivity 的 MainActivity。在 BaseActivity 中,在“onCreate”方法中,我初始化了 nfc。

在 MainActivity 我有一个带有 4 个选项卡的滑块,在每个选项卡中我都有一个片段。我可以使用 nfc 的片段只有数字 0(NfcFragment)。

我第一次启动 MainActivity 时,会调用“onCreate”方法并显示第一个片段(FirstFragment)。如果我不在 NfcFragment 中并且我接近一个 nfc 标签,我会得到一个祝酒词,上面写着“移动到 NfcFragment 以使用 nfc”。

如果我移动到 NfcFragment 并接近一个 nfc 标签,则会调用“onNewIntent”方法并打开一个新活动 (MyNewActivity)。从 MyNewActivity 我按回,“onBackPressed”被调用,我执行“finish()”。

从 MyNewActivity 我返回并再次在 MainActivity 中找到自己(它已经实例化,因此不称为“onCreate”而是“onResume”)。

现在,如果我转到不是 NfcFragment 的片段,它应该显示一个 toast 对吗?相反,不,从任何片段,如果我接近一个 nfc 标签,MyNewActivity 就会打开。问题是 onNewIntent 方法不再被调用,它被绕过了。

我在“onPause”中正确使用了 disableForegroundDispatch 方法,在“onResume”中正确使用了 enableForegroundDispatch 方法。我还使用了标志 FLAG_ACTIVITY_SINGLE_TOP、FLAG_ACTIVITY_SINGLE_TASK 等。

如果我在 MainActivity 的 onResume 方法中重新初始化 nfc,或者如果我在 MyNewActivity 的“onBackPressed”方法中执行 startActivity(this, MainActivity.class),则此行为得到解决,因为调用了 onCreate 方法并且活动的新实例是创建的。但这是一种解决方法,我不想重复初始化 nfc。

请有人给我一个解决方案来初始化 nfc 并始终使用 onNewIntent 方法拦截 nfc 标签?即使我从 MyNewActivity 回到 MainActivity ,所以称为 onResume 方法而不是 onCreate 方法。

有什么建议么 ?非常感谢

0 投票
0 回答
187 浏览

android - 通过 onNewIntent 接收的内容 uri 的持久权限

我想获得对通过以下方式接收的文件的持久读取访问权限onNewIntent()

但这失败了,因为takePersistableUriPermission打算与ACTION_OPEN_DOCUMENT(来自存储访问框架)一起使用:

有没有办法获得通过 接收的文件的持久读取权限onNewIntent()?还是我必须将文件复制到本地应用程序目录?

问候,

0 投票
1 回答
146 浏览

android - 无法获取 onNewIntent() 触发

所以我已经通过解决这个 onNewIntent() 的解决方案解决了超过 7 个 stackoverflow 问题,但即使如此,我似乎仍然无法让它工作。

我要触发 onNewIntent() 的活动:

在 ViewStatus 活动中:

我启动了通知,但是在单击通知时我的 onNewIntent() 没有被触发:

有什么我想念的吗?

0 投票
1 回答
437 浏览

android - 应用程序启动时使用 PendingIntent 传递数据并使用 onNewIntent 检索

我有一个将接收推送通知的 Android 应用程序。通知具有可穿戴支持,因此通知也将在带有操作按钮的 Android 穿戴中可见。

我希望onMessageReceivedFirebaseMessagingService课堂上收到通知时传递数据。尝试在 Intent 中设置数据并通过 Pending Intent 传递。

当点击来自 Wear 的通知时,捕获 IntentonNewIntent以获取传递的数据。但是找不到通过的数据。

无法获取数据。有什么方法可以通过待处理的意图来传递意图?或者如何获取通过 Pending Intent 传递的值。

0 投票
0 回答
46 浏览

android - 检测到 NFC 标签时永远不会调用 onNewIntent 方法

我目前正在开发一个 Android NFC 应用程序。这个应用程序包含一个NavigationDrawer我可以访问 3 个不同的片段,每个片段对应于 3 个不同的 NFC 功能。

首先,我想验证我的应用程序是否可以扫描 NFC 标签(这里我有一个 NXP NTAG 5 boost 标签,它是一个 NFC Forum Type 5 标签)。

我的问题是,当我的应用程序运行时,onNewIntentmyMainActivity永远不会被调用。

我确定这不是由于硬件,因为我可以使用常见应用程序检测到这个标签,但这可能是由于我传递给NfcManager文件中的函数的参数,比如activity.applicationContext但我不确定。

现在,我指定我不希望在检测到标签时启动特定活动,我只想在应用程序运行时检测 NFC 标签。

你能帮助我吗?

MainActivity

NfcManager:

编辑:

“NfcManager”类的目标是尽可能多地封装 NFC 功能,以避免将它们放在“MainActivity”中。

问题是前面的代码不起作用,而下面的代码,其中包含在“MainActivity”中的逻辑运行良好。我真的不明白问题是什么。

MainActivity: