Android 任务亲和力解释

2024-03-07

属性具体是什么taskAffinity用于?我已经经历了文档 http://developer.android.com/guide/topics/manifest/activity-element.html#aff但我不太明白。

谁能用通俗易懂的语言解释任务亲和力?


Android 任务关联性有什么用?

Android 应用程序具有像一副纸牌一样形成堆栈的活动。如果你启动一个android应用程序,并启动五个活动A、B、C、D、E。他们将形成一个堆栈

E   - chat view
D   - weather screen
C   - map view
B   - weather screen
A   - login screen

E 是最后一个启动的 Activity,并且正在显示。如果关闭 E,则会显示 D。如果关闭D,将显示C。 ETC。

请注意,活动B and D是相同的活动。如果用户要对D weather screen,然后决定关闭该活动,然后关闭C Map view?

然后用户会回到天气屏幕,并且用户会因为在级别上所做的更改而感到不高兴D weather screen没有保存在关卡中B weather screen。尽管这是相同的活动,但该活动的状态不同。

用户有 5 层 Activity 堆栈,其中两个是相同的 Activity。将所有 5 个从堆栈中弹出将产生这样的现象:您将与同一活动的两个不同版本进行交互,并且可能会非常混乱。

用户通常不会按照严格的活动堆栈来思考。他们想:“哦,天气视图我会在那里进行更改”,然后他们想返回到地图视图。然后再次备份,因为他们想返回登录屏幕。为什么是B weather app显示以及为什么不保存关卡设置D?

程序员也许能够减轻一些混乱,如果活动B and D状态已链接。这样一来,一个的改变就会改变另一个。每次用户打开新的天气屏幕时,它都会秘密打开天气屏幕的单个实例。

在这些情况下,可能需要更改 Activity 的 taskAffinity。用户将更改级别 D。然后返回到级别 B。并查看 B 中对 D 所做的更改。

该程序保留了一个可以备份的堆栈,这很好,当用户在随机位置打开同一活动的 X 个实例时,它们都是一个。

带有更多说明的幻灯片:http://www.slideshare.net/RanNachmany/manipulated-android-tasks-and-back-stack http://www.slideshare.net/RanNachmany/manipulating-android-tasks-and-back-stack

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 任务亲和力解释 的相关文章

  • 检测正在插入的设备

    我希望能够检测设备是否已插入 我希望能够像查询连接状态一样进行查询 这可能吗 或者我是否需要创建一个监听电池事件的广播接收器 显然是ACTION BATTERY CHANGED http developer android com refe
  • 是否仍然建议使用 AsyncTask 在后台加载 listView 项目?

    背景 我听说有一些在后台加载数据的新解决方案比 AsyncTask 更值得推荐 例如loaders http developer android com reference android content Loader html 问题 As
  • Android 中的列表视图到 pdf

    我有一个自定义列表视图 我想从整个列表视图制作pdf 我参考了很多帖子并实现了下面的代码 该代码将我的列表视图转pdf 但问题是它不包含整个列表视图项目 pdf 中仅提供前几项 我的转换函数列表视图转pdf is fab setOnClic
  • 无法禁用 Firestore 中的离线数据

    从我的数据中删除数据后Firestore Database 这需要我的Android app一段时间后才意识到数据已被删除 我认为这是由于自动数据缓存而发生的 我的应用程序与离线使用无关 我想禁用此功能 我已将其添加到我的自定义中Appli
  • Android异步服务调用策略

    这是场景 客户端对服务进行远程调用 返回 void 并提供 回调对象 服务在后台线程上执行一些长时间运行的逻辑 然后使用回调对象来触发以太成功或失败 因为这些操作视觉元素 执行 Activity runOnUiThread 块 该场景运行良
  • android新手需要了解“?android:attr/actionBarSize”

    我正在经历拉尔斯 沃格尔的教程 http www vogella com articles AndroidFragments article html在使用 Fragments 时 我遇到了以下代码 android layout margi
  • Android 服务 START_STICKY START_NOT_STICKY

    我需要让我的服务始终在后台运行 并使用 startService 函数启动我的服务 无论应用程序的状态如何 我都不想重新启动服务 这是我的观察 START STICKY gt 如果应用程序启动 则服务正在重新启动 当应用程序关闭时 服务也会
  • 垂直翻转 Android Canvas

    有没有一种简单的方法可以在 Android 中翻转画布 我似乎找不到任何可以让我垂直翻转它的东西 这样 y 轴上的零就是手机屏幕的底部而不是顶部 如果解决方案不是特别快也没关系 因为我没有对画布进行任何计算密集的操作 提前致谢 Try ca
  • Android:NotificationCompat.MediaStyle 操作按钮不执行任何操作

    我有一个简单的 Android 应用程序 其中包含一个Activity and a Service源自于MediaBrowserServiceCompat 我已成功将其设置为通过使用播放我的主要活动中的音频MediaBrowserCompa
  • 通过 Intent 从文件管理器中选择文件

    我想做的 我想获取文件字符串形式的路径 我通过 Android 文件管理器选择该路径 我拥有的 Intent intent new Intent Intent ACTION GET CONTENT intent setType startA
  • 按钮上方带有文本的单选按钮

    我是 Android 新手 我需要在我的活动中添加单选按钮 但我需要将文本放在项目符号按钮的顶部 请提供任何帮助 我发现了以下内容 尽管我不明白 drawable in 选择器和 style Tab 样式是什么 顶部带有文本的单选按钮 ht
  • 带有内容提供商的小部件;无法使用ReadPermission?

    所以我刚刚为我的应用程序实现了一个小部件 它通过我的数据库从数据库获取数据ContentProvider 我在清单中定义了自己的读 写权限 声明我使用它们 似乎没有什么区别 并在内容提供程序中要求它们
  • Android Studio 停留在构建 gradle 项目信息上

    我正在使用 Android Studio 2 3 每当我尝试创建一个新项目或打开某个项目时 它都会卡在此时 正在构建 Gradle 项目信息 请建议我一些解决方案 它可能正在下载 Gradle zip 文件 e g Users user g
  • 通过覆盖滑动调整图像大小不会调整图像大小

    我在用着Glide下载并显示图像 但是 当我尝试调整图像大小时 它不会这样做 我得到随机大小 或者可能是图像的实际大小 这是我用于通过 Glide 加载的代码 Glide with context load file getUrl asBi
  • Android/三星 Galaxy S 模拟器

    有没有办法在三星银河模拟器或类似的东西上尝试我的项目 我的项目在 HTC Legend 上运行 但在该设备上崩溃了 我如何在 android eclipse 上设置三星 Galaxy s 我设置了 W800 854 2 2 AVD 但它可以
  • toArray 与预先确定大小的数组

    使用时ar toArray new String ar size 安卓工作室3 2 1警告预先确定大小的数组并建议空数组 有两种方式将集合转换为数组 使用 预先确定大小的数组 如 c toArray new String c size 或使
  • 如何更改蜂窝中儿童偏好屏幕的背景颜色

    过去几天我一直在寻找解决方案 但找不到 我需要更改右窗格的背景颜色 我知道如何更改左父首选项的颜色 我在清单文件中创建了一个新主题
  • 谷歌的Json解析Gson库:JsonElement和JsonObject有什么区别?

    public abstract class JsonElement extends Object 表示 Json 元素的类 它可以是 JsonObject JsonArray JsonPrimitive 或 JsonNull public
  • 尝试重新打开已关闭的对象:sqlitequery

    所以本质上我查询数据库两次 我不明白这个错误真正来自哪里 因为我没有在任何地方关闭数据库 返回错误的代码是这样运行的 我查了一下 刚刚看到一个像我这样的案例 BeaconHandler pullAllDB new BeaconHandler
  • Android 中用于过渡的自定义动画对象?

    我想用一些更奇特的东西来覆盖 Android 中的默认活动转换 我想做的事情不能用通常使用的 XML 集来完成 所以我不能使用overridePendingTransition因为它只接受对基于 XML 的动画资源的整数引用 我想做的是创建

随机推荐

  • 将 Rails + Puma + Postgres 应用程序部署到 Elastic beanstalk 的正确方法是什么?

    我有一个 Rails 5 API 我正在尝试在 Elastic Beanstalk 上 正确地 部署它 这是我的初始config puma rb我使用的文件 threads count ENV fetch RAILS MAX THREADS
  • Ruby Sinatra Hello World `remove_const' 中出现错误:常量 URI::WFKV_ 未定义(NameError)

    只是想让简单的http服务器运行并且对ruby一无所知 usr local lib ruby gems 1 9 1 gems rack 1 3 5 lib rack backports uri common 192 rb 53 in rem
  • Mac 上使用 Komodo 的 Python 宏

    我正在使用 Komodo IDE 版本 6 1 1 内部版本 61234 平台 macosx x86 我还使用 Python 3 2 和 Python 2 7 我有just转而使用 我的第一台 Mac 操作系统版本10 6 在我的 Wind
  • 将序列化的 protobuf 输出转换为 python 字典

    给定一个字符串格式的序列化 protobuf 协议缓冲区 输出 我想把它转换成Python字典 假设这是序列化的 protobuf 以 python 字符串形式给出 person info name John age 20 website
  • 通过括号之间的逗号对字符串进行分组

    响应 正则表达式查找两个字符之间包含的字符串 同时排除分隔符 https stackoverflow com questions 1454913 regular expression to find a string included be
  • 可以将一个按钮覆盖在另一个按钮之上吗?

    我试图将一种按钮覆盖在另一个按钮之上 原因是我想向用户解释某些按钮的作用 例如 会有一个按钮 在该按钮的右上角或其他位置会有一个问号 当用户按下问号时 它会解释该按钮的作用 想到的就是这个 试试吧
  • int LA[] = {1,2,3,4,5} c 中的内存分配混乱

    我观察到为数组分配的内存似乎是动态的 这是我在此找到的示例代码tutorial https www tutorialspoint com data structures algorithms array data structure htm
  • jquery 取消悬停

    我有这个脚本可以在段落内的链接悬停时在段落上显示背景颜色 我不知道该怎么做是在我 取消悬停 后使其返回到原始背景颜色 function box a hover function this parent css background colo
  • 获取最新发布的 YouTube 视频 URL

    我希望有人能够帮助我解决我遇到的问题 目前在我们的网站上 我们有这个页面 http driftgames life instagram http driftgames life instagram 我们使用它作为 Instagram 生物链
  • 一起使用 SQL 和 Pearl - 哪一个应该用于常用功能?

    我没有发现这个问题的任何重复 但如果有一个或多个 我很抱歉 请用链接发表评论 这个问题很基本 答案也可能是这样 如果我使用 Perl 来执行数据库并对其进行操作 那么当涉及共享函数时 我应该将负担放在哪个途径 Perl 与 SQL 上 功能
  • 使用Java连接到远程HBase服务

    我有一个小示例代码 我在其中尝试建立与远程 HBase 实体的连接 该代码在未安装 HBase 的 Windows 计算机上运行 我尝试连接到已安装并运行该代码的远程 Ubuntu 服务器 下面代码片段中的 IP 当然只是一个占位符 代码如
  • LDAP 使用 UPN 在 Active Directory 中搜索用户

    我正在使用 LDAP 身份验证 需要帮助 假设我有一个用户 电子邮件受保护 cdn cgi l email protection 其中 zzservers ad 是 demo com 域的 UPN 别名 我已经知道一种按域在活动目录中搜索用
  • RVM、Ruby 1.9.2、Rails 3、Passenger 3.0.2(Bundler::GemNotFound)

    我正在使用为 Nginx 配置的 RVM Ruby 1 9 2 Rails 3 Passenger 3 0 2 我正确设置了服务器配置 另一个应用程序到目前为止正在运行 但对于新应用程序 启动服务器时 http myapp local ht
  • Geb Firefox 驱动程序:为什么我的测试运行两次?

    对所有这些代码感到抱歉 但我不知道是什么造成了我的问题 所以就这样吧 我配置了 geb 插件来使用 JUnit 运行功能测试 所以我在我的buildConfig groovy def seleniumVersion 2 29 0 def g
  • ReSharper 和 var [重复]

    这个问题在这里已经有答案了 可能的重复 为什么 ReSharper 想要对所有内容使用 var https stackoverflow com questions 1873873 why does resharper want to use
  • 这是 MySQL 排序错误吗?

    我遇到了奇怪的服务器行为 MySQL 5 1 50 它对记录的排序不正确 例如我创建了一个表test CREATE TABLE IF NOT EXISTS test id int 11 NOT NULL AUTO INCREMENT tit
  • 使用 JQuery 触发 HTML 5 颜色选择器的点击

    在 JQuery 中 我们可以通过以下方式触发任何给定元素的 点击 selector trigger click 尽管当元素是 HTML 5 颜色选择器并且 CSS 将 display 属性设置为 none 时 我很难这样做 通常 如果输入
  • 如何在jquery中移动鼠标上的文本?

    如何使鼠标悬停时链接向左移动 我希望鼠标移开时文本移回 用jquery可以吗 请帮忙 谢谢 无论 CSS 是否在 jQuery 中 您都会使用 CSS 不知道为什么要使用 jQuery 但无论如何 这里有一个示例 a href Move m
  • Android Studio中EditText与其Id的关系?

    请仔细阅读我的问题 我在学习Activity LifeCycle 我只有一个EditText and a TextView在我的 XML 布局中具有某些id 当我旋转屏幕时 似乎没有任何变化 因为旋转不影响EditText 但是当我删除id
  • Android 任务亲和力解释

    属性具体是什么taskAffinity用于 我已经经历了文档 http developer android com guide topics manifest activity element html aff但我不太明白 谁能用通俗易懂的