[译]Ingress APK 拆解 v1.71.1

原文作者:Connor Tumbleson

 

欢迎来到新版本的拆解。我们跳过了 1.70.0,直接来分析有巨量新功能的 1.71.1。

新的任务 UI 及更多

任务系统得到了些许的 UI 更新。第一个变化在任务列表中。
任务UI变化
如你所见,我们以后可以看到一个新的数据:从当前位置到任务起始门泉的距离。这可以让你到了一个陌生地方的时候,方便地查询到应该做哪一个任务。
我们还发现一个未开放的按钮,它是由一个新的函数值直接确定的:

“enableMissionsStartPoints”: 0

如果启用,那么你点击某个门泉时就会发现一个新按钮:
portal任务按钮,请忽略排版问题

这个按钮是非常有用的,如果你点击它,那么将会显示以该门泉为起始路径点的所有任务列表。如:

任务列表

除了以上的变化,你会发现任务界面增加了更多的图标和颜色。这个信息是从下列的 UI 类中获得数值的:

missions-back-button
missions-list-horizontal-separator
missions-highlighted
missions-list-item-title-highlighted
missions-list-item-nearby-missions

证人之石 (碎片)

我们已经见过递归文物贾维斯碎片太阳神的文物。现在,我们又看到了 31 个证人之石的碎片。

artifact_frozen_shonin_fragment_[1-31].obj
artifact_shonin_fragment_[1-31].obj

我们通过 artifact_shonin.png 知道,这些文件看上去是一些蓝色的东西。然后,下面是Daniel Benton 帮我们整理出来的图像:

shonin

这些碎片将用来做什么?为什么是31个?不知道。这个星期的浸视界报告可能会提到。

加速充能

我们可以看到一个新的数值。

"enableBoostRecharge": 0,
"boostRechargeResonatorsCost": 10000

BoostRecharge

该功能尚未启用,但我们对它进行了测试。如上所述,按住 Recharge 按钮(就像连位符入侵(Glyph Hacking))会导致充能提升。根据新的变量值,这样做会用掉 10000XM。

所以很容易知道,此功能将不可用于 8 级以下的任何特勤,因为他们的 XM 槽是小于 10000XM 的。除此之外,我们不知道其他细节,只能等新的版本。

增强模式

正如在 1.65.01.66.01.68.0 拆解中说过的,未来支持可穿戴设备的功能被称为“增强模式”,它会在后台运行,并推送浸视界的相关通知。我们这个版本的设置里找到了这个功能的确切描述。

<string name="ACTIVE_MODE_SETTING_DESCRIPTION">Notify me of nearby Portals and Ingress activity.</string>

启用后,你会在状态栏上看到一个新的小图标。

new-icons
这个功能可以让你在 Android 可穿戴设备收到浸视界的通知,即使你没有在前台运行浸视界。

新的 MOD 摧毁动画

这次更新还多了一个有趣的动画:MOD 被摧毁。请看下面的动图:

boom

总结

这个版本有很多的新功能。打包日期是 2 月 20 日,我们在 2 月 23 日得到了它。从打包 APK 到发布,只有3天,这是非常迅速的。我们对即将到来的一系列更新,以及证人之石的具体用途非常期待。下次拆解再见!

特别鸣谢

  • Roberto                  –          一些功能的截图
  • Dean                      –          Mod被摧毁的GIF动画
  • Daniel Benton       –          可视化的见证片段
  • Jack                       –          APK文件

(DavisKevinZerro 审核与润色)

[译]Ingress APK 拆解 [1.69.0]

欢迎回到 Ingress apk 拆解. 1.69.0 版刚刚在 Play Store 上小范围发布. 这次只是一个小的主要针对可穿戴设备的更新. 我们还没有看到官方宣布这项更新, 但是不妨碍我们继续窥视这个 APK 里隐藏的东西.

可穿戴设备

如果一个程序要支持可穿戴设备, 那它就要包含一个让可穿戴设备映射信息的配置文件. 在 1.69.0 中, 这个文件被添加了.

<wearableApp package="com.nianticproject.ingress">
<versionCode>1</versionCode>
<versionName>1.0</versionName>
<rawPathResId>wearable_app</rawPathResId>
</wearableApp>

这表明这个功能已经很接近发布了. 虽然代码又变了, 但是能触发通知的动作也确定了.

  • Achievement Unlocked (Badge) (解锁成就)
  • Comm Ping (有人@我)
  • Portal Neutralized (Portal 被打掉)
  • Portal Under Attack (Portal 被攻击)
  • News of the Day (每日新闻)

不同的阵营都有不同的背景图的设计. 下面是这些图.

wear_achievement_unlocked_bg

wear_comm_bg

wear_generic_bg1

wear_neutral_portal_bg

wear_enlightened_portal_bg

wear_resistance_portal_bg

wear_portal_under_attack_bg

除了上面这些, 还添加了3个新的状态栏图标. 它们看起来像是阵营聊天信息通知和一些警告或定时器.

最后, 2个新的字符串确定了新的 “Active Mode” 我们在上一个拆解中已提到过这个新东西.

<string name="ACTIVE_MODE_TITLE">Active Mode</string>
<string name="START_ACTIVE_MODE">Start</string>

结论

很抱歉这次拆解这么短. 这次的更新好像集中在可穿戴设备的功能上. 打包日期是1月21日,但是我们获得更新的日期是1月26日. 下次拆解再见!

授权转载并译自FEV GAMES 

[快报]证人 (Shonin) 异常事件与招募者勋章

************* BEGIN TRANSMISSION *************

LINK ESTABLISHED

概览

今天凌晨 3:46, 浸视界 Google+ 帐号发布了一条消息, 宣布了之前未命名的新一轮 XM 异常事件的官方命名: 证人 (Shōnin), 并宣布特勤成就系统将加入新勋章”招募者(Recruiter)”, 并在一小时后再次发帖对招募员勋章作出详细说明.

证人 (Shonin) XM 异常事件

Shonin 异常事件被认为是抵抗军在赢得示视之后使 N’zeer 加速接近我们的一次异常事件. 本次事件将会分别于 2 月 21 日与 3 月 28 日于世界各地预定的城市进行, 其中包括以前本站报导过的广州. 关于此次活动的所有时间表可参考浸视界官方活动首页.

(pí)(tiáo)(kè)勋章

recruiterMedal

招募者勋章是以玩家招募进入浸视界且升到 3 级的新玩家的数量为标准的勋章. 结合官方的详细说明, 我们可以得出一下几点:

  • 算入勋章的招募方法: 通过 XM 扫描器内的 “OPS 按钮 > 招募(Recruit) >招募特勤(Recruit Agents)”, 或打开情报地图(Intel Map)点击招募(Recruit).
  • 招募玩家数量 2, 10, 25, 50, 100 分别对应铜, 银, 金, 白金, 黑玛瑙五个勋章等级.
  • 每个老玩家会收到很多招募名额来招募新玩家.
  • 新玩家用于注册浸视界帐户的 Gmail 必须与收到招募的 Gmail 相同.

 关于招募者勋章的玩家反应

凌晨的这个招募者勋章的消息让很多身处下午的外国特勤颇有微词, 于是他们开始了热烈的吐槽:

15 - 1

 

有人做了动图:

smg

吐槽勋章太多的:

15 - 1

吐槽成了猫视界的:

Catgress

而就在他们还在吐槽的时候, 已经有人在闷声发大财了:

15 - 1 (1)ORZ ,哥们儿手速挺快的嘛…

浅谈浸视界 Passcode 解码技巧: 02. 二进制与 ROT13

那么我们来开始第二期的 Passcode 解码技巧 介绍了, 不熟悉这个系列的朋友可以参考第一篇.

二进制

有/无, 开/关, 对/错, 是的, 这就是没有中间态的二进制世界.

所谓二进制(维基百科), 简单来说就是逢二进一, 只由 0 和 1 组成的进制. 例如:

  • 一位时有两种可能, 0, 1.
  • 两位则是四种, 00, 01, 10, 11.
  • 三位自然是 8 种了.
  • 四位是 16 种….

所以你应该大概知道二进制是怎么回事了, 而网络上最常用的二进制位数是八位, 按照兑换码通常的解法, 它们一般会变成 ASCII 码. 问题是, 在 Niantic 的世界里(即兑换码的加密), 通常二进制数字会被转换成其他的奇怪的形式. 有时甚至会被转换成…数字和字母. 这样说你肯定不太明白, 我们来举几个例子:

等级一

01101001011011100110011101110010011001010111001101110011

011000110110111000101110011000110110111101101101

等级二

a83e1hh7y91h371jy81bc371j446nj2tq76we5y6h731dv61h731dv61

u56nvc82c64r723hiu5k422ui83hjh38b15c8136x58z36p6

等级三

vJUvAxvAiUYlWVRovYNvzYWEvONMsxAduLMecAdBiUUYdxSFcVHWocPZ

uYWtteIOxVZbIKLfowQiREWoiUSmcvXMzLFkITVIpOSiUSaA

等级四

. – – . – . . – . – – . – – – . . – – . . – – – . – – – . . – . . – – . . – . – . – – – . . – – . – – – . . – –

. – – . . . – – . – – . – – – . . . – . – – – . . – – . . . – – . – – . – – – – . – – . – – . –

关于二进制大概就是这几种加密方法.

凯撒密码

凯撒密码的科普可直接参考维基百科, 当我们用曾经介绍过的 4 种解码方法都无法得出似乎是正确的兑换码的时候, 就可以考虑用凯撒密码了.

凯撒密码说穿了就是简单的字母替换, 也就是对于整个英文字母表的易位运算, 这样的加密通常叫 ROTx. 比如字母’A’经过 ROT1 加密之后变成’B’. 如果是 ROT2, 那么’A’就会变成’C’.

而在这种加密方式中, 最常用的是 ROT13, 因为 26 个英文字母的缘故, 它的加密和解密是互逆的. 比如说这里有两个字符串的原文:

ingresscn / vaterffpa

分别经过 ROT13 处理后

vaterffpa / ingresscn

如你所见.

练习

那么又到了练习时间了, 这次的练习经过了多重加密.

MTAzMTA4MTEyMTE3OTg1NTEwNTEwNDU3NTcxMDMxMTA1MA==

 

Have fun~

[译]Ingress APK 拆解 1.68.0

授权转载并译自FEV GAMES

欢迎回到 Ingress apk 拆解. 在跳过了 1.67.1 版本的拆解之后, 我很自豪地发布这个刚刚在 Play 上小范围发布的 1.68.0 版本的拆解. 如无意外, 这个版本将会大范围的发布到你们的设备上. 一如既往地, 我们可以窥视这个 APK 里隐藏的东西. 让我们开始分析 1.68.0.

可穿戴设备

Image used in the background of the Wearable portion of Ingress就像我们提到过的, 浸视界可穿戴设备版本就要到来了. 剩下的就是什么时候发布的问题了. 你在右边 (或者下边) 看到的图片被命名为 wear_generic_bg.png. 意思是可穿戴设备通用背景图片. 所以这个图很可能是浸视界可穿戴设备的背景界面. 它在我的眼中看起来非常漂亮, 就算这是一个我们以前见过的图标.

bWVzc2FnZTVrYTczcnA0

我们也看到添加了各种用于可穿戴设备跟用户交互的字符串.


<string name="IOS_NOTIFICATION_UNLOCK_MESSAGE">launch Ingress</string>
<string name="ACTIVE_MODE_RUNNING">Active Mode online.</string>
<string name="STOP_ACTIVE_MODE">Stop</string>
<string name="ACTIVE_MODE_RUNNING_ABOUT_TO_EXPIRE">Active Mode about to expire.</string>
<string name="EXTEND_ACTIVE_MODE">Extend</string>
<string name="ACTIVE_MODE_PLAYER_RECOVERABLE_ISSUE">There was a problem. Touch to resolve.</string>
<string name="ACTIVE_MODE_SESSION_EXPIRED">Active Mode session has expired.</string>
<string name="NEW_ACTIVE_MODE_SESSION">New session</string>

跟据上面的字符串猜测出可穿戴设备版本的基本功能如下.

  1. 开始会话 / 扩展现有的会话
  2. 将开启 Smart Notification(智能通知), 让你的手表/其它可穿戴设备可以显示通知.
    • 有关 Smart Notifications 的信息可以在 这里查看.
  3. 会话将会有计时, 并且可以 “停止”, “扩展” 或者直到计时过期.
  4. 这个模式已被命名为 “Active Mode” , 会让你的浸视界体验更上一个台阶.

新图标 (状态栏图标)

Screenshot from 2015-01-12 21:27:57

其实呢, 这次的拆解也没什么大新闻, 但是我找到了一些状态栏图片的改变. 这些图片背景是透明的, 所以应该能轻易地融入到不同的设备中, 令我们的 XM 扫描器更好看.

如上图, 这些图标是为了这些通知准备的:

  • 新闻(每日新闻)通知
  • 多条新闻通知
  • 被中立的门泉通知
  • COMM 通知
  • 被攻击的门泉通知

又见代码混淆器

我寻找改变的方法是对比上个版本跟现在的版本. 理论上这就可以对比出变化了, 但是, 看看下面这些:

1.67.1

.field public static final CREATOR:Lo/ח;

1.68.0

.field public static final CREATOR:Lo/צ;

如你所见, 只是简单改变了一个变量. 一个 Unicode 字符变成了另外一个. 很像是被 Proguard 这样的代码混淆器干的. 在 1.68.0 中, 这只是众多之一. 使用 sed(一个 linux 命令) 进行了巨大的自动化查找和替换操作, 但是这个本来一次就能完成的拆解工作变的很费时间. 每次版本更新, 里面的信息都会变化位置, 所以寻找「改变的」数据变的很难, 除非你知道你在找什么.

这意味着 — 我将可能比以前错过更多的内容. 在超过 3000 个文件中找线索, 这是一个比较坑爹的任务. 但是, 如果这是为了让作弊行为更加的困难, 那么就继续吧, Niantic !

结论

这个版本编译时间是在1月6号, 12号放出. 因为 AXA Shield 已经正式启用了, 所以在 APK 中唯一还没有放出的隐藏功能就是浸视界的可穿戴设备版本. 我们将在以后的拆解中继续关注这个功能的开发进度.

(DavisKevinZerro 审稿与润色)