アプリケーションパッケージ解析 [2.49.1]

アプリケーションパッケージ解析 [2.49.1]
皆さん、ごきげんよう。新たなアプリケーションパッケージ解析へようこそ。リリースノートは変更事項を知る素晴らしい指標となりますが、幾つか注目に値するものを見つけました。

ドローンネット
既にドローンは稼働を開始し、近隣ポータルを経由して飛び回りポータルキーを取得せずにハックできるその機能が明らかとなっています。それを踏まえ、変更というよりも不具合修正と思える新たな機能開発が幾つかありました。

private const string DRONE_SAME_PORTAL_KEY = "DRONE_SAME_PORTAL_ERROR";
private const string PORTAL_OUT_OF_RANGE_KEY = "RESONATOR_MODE_RECHARGE_OUT_OF_REMOTE_RECHAREGE_RANGE";
private const string DRONE_RETURNED_KEY = "DRONE_RETURNED";

数多くのエラーガードに加えてスペルミスもあるようですが、「スカウト」という新たなコード群も確認できました。これは全く新規のもので、お伝えするには時期尚早なのかもしれません。この新たなスカウト機能が探索を行うしかないドローンの性質とどのように関連するのかはわかりません。

編集:スカウト・コードはおそらくポータル・スキャニング機能と「スカウト」メダルに関連するものと思われます。

加えて何かしらのアイテム使用を制限する新たなコードを確認しました。アクセスレベル4でレベル5の武器使用を制限するといったアイテム制限は既に存在していますが、今回のコードが何を意味しているのかはわかりません。

private bool CanUseItem(IMOAIKKHOAJ item) { }

バトルビーコン
ビーコンにチュートリアルのコードが追加されており、開発が終盤になっていることがわかります。

public void SetBattleBeaconTutorialComplete() { }
public bool IsBattleBeaconTutorialCompleted() { }

この件についてはバージョン2.48.2、27.2、2.26.1の解析でも詳しくお伝えしています。

アプリの評価
これはリリースノートに記載され、アプリの評価プロンプトも表示されるようになっています。レベルアップやメダル獲得時にポップアップすると説明されていましたが、コード上はあらゆる更新時にプロンプトを表示させる柔軟性があるようです。

public void SetVersionRateOurAppComplete(int version) { }
public bool DidPlayerCompleteRateOurApp() { }
public int GetVersionRateOurAppCompleted() { }
public void SetVersionRateOurAppPrompt(int version) { }
public int GetVersionRateOurAppPrompted() { }

コミュニティ内では強制的に評価を求められることに賛否ありますが、新規エージェントと高評価なしにこのアプリが存続できないことも確かです。

総括
総括を前に前回の更新でコミュニケーションパネルの強制更新を防止する機能に問題があり、一部のエージェントではコミュニケーションパネルが破綻してしまっていることが発覚しています。クラッシュレポートを見ると、パネル上のメッセージを既存情報と統合させようとするありふれた不具合のように見えます。

今回のリリースではローカル・パネル・メッセージという開発段階の新機能を確認できています。

public int get_EnableLocalCommMessages() { }
public void set_EnableLocalCommMessages(int value) { }

パネル・メッセージを円滑にスクロールさせるとともに位置記憶を可能にするため、この機能ではサーバーと同期させるのではなく端末に保存できるようにすると思われます。これがこのバージョンでのちょっとした解析結果です。それでは次回お逢いしましょう。

fev games
2020/06/17 21:00(Twitter)
Ingress Prime APK Teardown [2.49.1]

Ingress Prime APK Teardown [2.49.1]
June 17, 2020 . by Fevenis
Hi everyone and welcome back to another Ingress Prime teardown. While the release notes are a pretty good indicator of changes, we only found a few things worth noting.

Dronenet
The drone is live now and its features are known - jump around via nearby portals and hack them (without obtaining a key). With that knowledge, we saw some additional feature development which appears to be squashing bugs more-so than changing anything.

  • private const string DRONE_SAME_PORTAL_KEY = "DRONE_SAME_PORTAL_ERROR";
  • private const string PORTAL_OUT_OF_RANGE_KEY = "RESONATOR_MODE_RECHARGE_OUT_OF_REMOTE_RECHAREGE_RANGE";
  • private const string DRONE_RETURNED_KEY = "DRONE_RETURNED";

It looks like a lot of error guards coming in (plus a spelling mistake ), but we also noticed a new chunk of code called "Scouting". It is brand new and too early to tell, but I wonder with the nature of the Drone just exploring if this will tie into this new Scouting feature.

EDIT: The scout code probably has to do with portal scans and the badge for "scouting".

Additionally, we saw some new code guarding what items something was allowed to be used. Item gates for like a Level 4 trying to use a Level 5 weapon already exist, so I'm unsure what this is meant for.

  • private bool CanUseItem(IMOAIKKHOAJ item) { }

Battle Beacons
Beacons now have tutorial code, which pretty marks nears the end of this development.

  • public void SetBattleBeaconTutorialComplete() { }
  • public bool IsBattleBeaconTutorialCompleted() { }

We've talked about this a lot before in the following teardowns: 2.48.2, 2.47.2, 2.46.1.

App Rating
This was noted in the release notes, but the app prompt for ratings will arrive. It was described as popping after a level up or badge obtained, but the code allows much flexibility to show the prompt during every minor/major release configurable between amount of updates.

  • public void SetVersionRateOurAppComplete(int version) { }
  • public bool DidPlayerCompleteRateOurApp() { }
  • public int GetVersionRateOurAppCompleted() { }
  • public void SetVersionRateOurAppPrompt(int version) { }
  • public int GetVersionRateOurAppPrompted() { }

There is a love-hate relationship in the community with forced prompts to rate, but at the same time - without new agents and a high rating the app will fade and die out.

Conclusion & Unknown
Before ending, we know the feature to prevent comm "jumping" around had some issues with the last release, pretty much breaking comms completely for a subset of agents. Based on crash reports, it looked like a classic bug of trying to merge comm messages with an already existing source. This release we saw a new feature in development known as local comm messages.

  • public int get_EnableLocalCommMessages() { }
  • public void set_EnableLocalCommMessages(int value) { }

I imagine this feature will allow comm messages to be stored locally (instead of constantly syncing with a server) to allow a more fluid scrolling and remembering your place. With that, a small teardown this version - till next time agents.

 

前へ

レインボーエックスエム

次へ

インテルマップの読み込み障害