问题标签 [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 投票
2 回答
648 浏览

android - 如何在非活动类中使用 onNewIntent

这个问题可能看起来有点宽泛,但我敢肯定,一旦你阅读了,上下文就会变得清晰。

我需要编写一个不扩展活动的类,但我希望它能够运行 onNewIntent 方法。

这样做的原因是因为该类实际上没有或不需要接口或连接到 UI。我只需要它在后台嗅探一些意图。我还不能让 onNewIntent 部分工作。

这就是我的意思。

由于该类不需要接口,我认为它没有理由扩展活动。但是对于我想要正常工作的事情,我需要检查新的意图。

想知道是否有非活动类监听新意图的解决方法。

0 投票
1 回答
485 浏览

android - 在通知单击时将项目添加到片段内的 recyclerview

设想

fragments在一个View Pager. 在其中一个片段中,我有一个按钮来生成通知。通知已成功生成。现在我想在通知点击返回片段时发送一些数据。为此,我在onNewIntent()内部使用方法,activity并从中调用片段方法将数据传递回片段。

所有这一切都很好。

问题:

从通知接收数据后,我将其添加到 anarraylist并显示在RecyclerView. 现在的主要问题是在这种情况下onCreateView()不会再次调用,并且由于这个问题,片段中的所有视图都是空的,这一直导致空指针异常。有什么方法可以查看onResume()或保存对以前视图的引用。

这是相关的代码。

活动onNewIntent()代码:

片段getDataFromIntent方法:

initView()方法

addData()方法包括将静态数据添加到数组列表中。

错误堆栈跟踪

java.lang.NullPointerException:尝试在 com.testdemo.fragments 的空对象引用上调用虚拟方法 'void android.support.v7.widget.RecyclerView.setLayoutManager(android.support.v7.widget.RecyclerView$LayoutManager)'。 FragmentRecords.setAdapter(FragmentRecords.java:134) 在 com.testdemo.fragments.FragmentRecords.addData(FragmentRecords.java:128) 在 com.testdemo.fragments.FragmentRecords.getDataFromIntent(FragmentRecords.java:148) 在 com.testdemo.activities .MainActivity.onNewIntent(MainActivity.java:52) 在 android.app.Instrumentation.callActivityOnNewIntent(Instrumentation.java:1265) 在 android.app.Instrumentation.callActivityOnNewIntent(Instrumentation.java:1282) 在 android.app.ActivityThread.deliverNewIntents(ActivityThread.java:2755) 在 android。 app.ActivityThread.performNewIntents(ActivityThread.java:2773) 在 android.app.ActivityThread.handleNewIntent(ActivityThread.java:2782) 在 android.app.ActivityThread.-wrap12(ActivityThread.java) 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1602) 在 android.os.Handler.dispatchMessage(Handler.java:111) 在 android.os.Looper.loop(Looper.java:227) 在android.app.ActivityThread.main(ActivityThread.java:6102) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:961) at com。android.internal.os.ZygoteInit.main(ZygoteInit.java:822)

0 投票
0 回答
241 浏览

android - Android - onNewIntent - 片段

使用方法来处理捆绑包的最佳方法是onNewIntent什么?

这个箭头 -> 表示推送片段。

我有以下情况:

ActivityA -> FragmentA -> FragmentB -> 我去后台 -> 我收到一个推送通知 -> 用户单击推送通知,它会打开 ActivityA,里面有一个包。

然后我在 onNewIntent 方法上收到一个包,这个包里面有数据告诉我必须显示 FragmentA。

当您从后台返回时,可以建议从堆栈中取出 FragmentB。我不想要这种方法,我希望用户在背景中看到的第一件事是 FragmentA。

0 投票
0 回答
177 浏览

android - 如何打开具有相同应用程序的其他设备中的应用程序生成的具有自定义扩展名的文件?

我有一个应用程序将扩展名为“.swt”的数据库文件保存在特定文件夹中。我能够使用意图从一台设备共享此文件到另一台设备,但接收文件的设备无法通过同一个应用程序打开它。

这是我的带有意图过滤器的 AndroidManifest

这是我共享文件的代码

经过一段时间的搜索,我了解了 onNewIntent 方法。但它也不起作用。

那么我怎样才能让我的应用程序访问这个扩展名为“.swt”的文件呢?

0 投票
0 回答
263 浏览

java - 创建同一活动的多个实例

所以我一直在寻找任何地方,试图让我的应用程序在我想要“ onCreate ”时拥有一个新的活动实例,但我没有找到太多帮助我的东西。我知道你可以使用launchMode="singleTop",所以你可以强制一切都是newIntent而不是onCreate。我尝试使用 taskAffinity,但它只允许最近显示您应用程序的所有活动,而我试图允许多次打开 1 个活动。我相信 chrome 在某一时刻做到了这一点。一切都有帮助,如果您不明白,请发表评论。

在此处输入图像描述

0 投票
1 回答
45 浏览

android - 启动时保留 Home Activity 的实例

所以,我的应用程序有 5 个活动:A、B、C、D、E。A 是启动(启动器)活动,启动后不再被调用。启动后,B 被调用并充当 Home 活动。B、C、D、E 都使用 Intent.FLAG_ACTIVITY_REORDER_TO_FRONT 调用,以便通过 onNewIntent() 重用和更新一个实例。有用。我对用户体验感到满意。

这是我的问题。我希望 B 的第一个实例(启动时)作为根任务。换句话说,如果连续按下后退按钮直到退出应用程序,我希望 B 的第一个实例成为用户看到的最后一个屏幕。B 的所有其他实例通常应使用 Intent.FLAG_ACTIVITY_REORDER_TO_FRONT “回收”。

我很确定我可以做一个独特的活动(称之为 B2)并完成这个,有没有更好的方法?

0 投票
1 回答
69 浏览

java - 如何使 OnNewIntent 在选项卡内工作

我正在做一个有 3 个选项卡的项目。第一个标签用于将信息写入 NFC 标签,而其他 2 个标签用于从 NFC 标签读取信息。但是,我面临 OnNewIntent() 方法的问题。正如我从在线阅读中正确理解的那样,此方法仅用于活动而不是片段。我看过类似的问题和答案,但我不完全理解在我的情况下需要做什么来避免这个问题。

这是我将一些数据写入 NFC 标签的第一个选项卡的代码:

0 投票
5 回答
2413 浏览

android - onNewIntent 永远不会在片段中触发

我在让 onNewIntent 方法在 Fragment 中工作时遇到问题。我已经尝试了一切,但似乎没有任何效果。我的项目在使用活动时运行良好,但是当我切换到片段时它停止工作。我的想法是我想制作标签,其中一个标签写入 NFC 标签,其他标签将从 NFC 标签读取数据。这是我的片段代码(写标签):

在包含选项卡的 Activity 中,我创建了此方法:

我的带有标签的 Activity 的 AndroidManifest :

我已经用解决方案研究了类似的问题,但它们似乎都不适用于我的实现。我在这里做错了什么?

0 投票
1 回答
236 浏览

android - onNewIntent 从未在 Activity 中被调用

关于我在片段和活动中使用 onNewIntent 方法遇到的不同问题,我已经就 SO 提出了多个问题。我现在的问题是,无论我做什么,都不会调用 Activity 中的 onNewIntent 。具有 onNewIntent 的 Activity 包含多个选项卡。我的标签(片段)包含用于编写和读取 NFC 标签的代码。

这是活动的代码:

我的 AndroidManifest 看起来像这样:

Home Fragment(选项卡)用于将信息写入 NFC 标签:

我不明白为什么永远不会调用 Activity 中的 onNewIntent (屏幕上没有显示 Toast)。它与我的布局有关吗?

更新:通过创建一个新项目并将所有代码从旧项目复制到新项目来解决问题。

0 投票
2 回答
1106 浏览

android - OnActivityResult() 和 OnNewResult() 有什么区别?

请看这张照片

我想让应用程序看起来像那张照片..

当我单击子活动上的 MainActivity 按钮时,在 MainActicity 中都会调用 OnActivityResult() 和 OnNewIntent()。

我打算调用 OnActivityResult() 从 MenuActivity 回来,并调用 OnNewIntent() 从 subs 回来。

我了解到母活动通过 StartActivityForResult() 调用子活动,子活动调用 setResult() 进行返回。当我要调用的客观活动还活着时,我了解到需要 onNewContent(),因为客观活动不调用 onCrete()。

但我觉得我错了。请让我知道 OnActivityResult() 和 OnNewResult() 的区别是什么?我还想知道为什么在 setResult() 中未调用 setResult 时调用 OnActivityResult。

先感谢您。

MainActivity.java

MenuActivity.java

CustomActivity.java(子活动之一,代码与其他子活动完全相同)