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

3DCircleWithoutShadowTransparent.pngフェヴ・ゲームス(fev games)
2015/03/27 05:53:19
アンドロイドウェア用の開発やスキャナー上のボタン配置改善といった新たな機能を是非ご確認ください。

フェヴ・ゲームスと Connor Tumbleson がお送りいたします。お楽しみください!

1-73-1.png

2015年03月26日 Connor Tumbleson
アプリケーションパッケージ解析 [1.73.1]

新たなイングレスの解析をお伝えします。バージョン 1.73.1 は今現在 Play Store 上で1%公開となっています。問題が生じなければ、72時間以内に全面公開されることでしょう。

言語
バージョン 1.72.0 ではハードコードされた文字列の削除が開始されたとの第一報をお伝えしました。ご存知ない方へ説明すると、ハードコードとはアプリケーションのソースに直接記述された文字列のことです。Android と その優れた翻訳システムがその文字列を翻訳することができないということを意味しています。現状では1000程の文字列が存在しています。最新バージョンでは、新たな翻訳システムで扱う最初の言語として日本語が進められていることが明らかとなりました。

「設定」の「言語」に新たなメニューを確認できるようになるでしょう。

lang-picker.png

これには3種類の選択肢があります。

  • 自動(Android 端末上の選択に応じて言語選択します)
  • 英語
  • 日本語

この一覧は、今後の導入に応じて追加されていると思われます。

ウェアラブル
今回のバージョンでは「ActiveMode」サービスが追加されました。このAndroidサービスをご存知でない方のため、ここではドキュメントを参照します。

「サービスとは、バックグラウンド上で長期間アプリケーションを動作させたり、他のアプリケーションに機能提供するためのアプリケーション・コンポーネントです。各サービスクラスはパッケージ内の AndroidManifest.xml において <service> と取り扱われていなければなりません。」

今回 AndroidManifest においては次のように記述されていました。

  • <service android:exported="false" android:name=".smartnotifications.ActiveModeService"/>

ホスト側(Android)とコード(イングレス)とで接続されていることから、この機能は開発終盤に差し掛かっていることがわかります。 この機能は依然として @google.com ドメインの電子メールアドレスでしか有効化されてはいません。加えて、サーバー側でのフラグも関係していると私は考えています。

反応確認の変更に加えてこのことが示唆しているのは、機能はまだ開発半ばであるということです。

snipp.png

不可解なことに、「amNearbyPortalDistanceM」が 40 メートルから 200 メートルへ変更されていることがわかります。憶測に過ぎませんが、これは40メートル圏、すなわちハック可能距離にあるポータルからの通知取得に活用されるもののようですが、現時点でこの制限が200メートルとなっています。この変更が検証を目的としたものでしょうか、あるいは恒久的なものなのでしょうか。私たちはこの数値の監視を続けていきます。

ポータル画面のレイアウト
ハック・ボタンの配置を巡る騒動がイングレス・コミュニティで起きましたが、私たちはこの変更を察知していました。これが解決策なのか暫定的なものなのかはわかりませんが、すべてのボタンで位置が変わっています。次に挙げる以前のバージョンとバージョン1.73.1 のスクリーンショットで見比べてみましょう。ご覧のように、ボタン間隔が狭まり、ボタンの縦幅が大きくなっています。今回の変更によって、片手でもハック・ボタンを押す操作が幾分簡単になるでしょう。

layout.png

総括
今回のアプリケーションパッケージは2015年03月20日に構築され、私たちが手元に入手したのは2015年03月23日のことです。今回の解析は小規模と思われるかもしれませんが、楽な作業ではありませんでした。千に及ぶ文字列を妙録した言語は退屈で仕方のないものでしたが、非英語圏でスキャナーを扱う人々にとって恩恵となることでしょう。

それでは、バージョン1.74系でまたお会いしましょう。

fev games
2015/03/27 05:53:19
Ingress APK Teardown [1.73.1]
Come check out some new Ingress goodies including development for android wear and a welcome adjustment to scanner button placement to make it more ergo friendly. Brought to you by +Fev Games and +Connor Tumbleson . Enjoy!

Published on March 26th, 2015 | by Connor Tumbleson
Ingress APK Teardown [1.73.1]

Welcome back to another Ingress teardown. This is version 1.73.1, which is currently on a 1% roll out to a Play Store near you. Assuming no errors, it'll reach the entire Ingress population within 72 hours.

Languages on Languages
As first mentioned in 1.72.0 a large effort to remove all hard coded strings began. For those who might not know, hard coding is placing strings directly into the source of the application. This means that Android and its powerful localization system cannot translate any string that is hard coded. Now, we have quite the list of strings present (Around 1000). The last version proved that translation was under way and Japanese is the first language to join English in the brand new translation system.

You will see a new menu under Settings labelled "Language"

This has 3 options

  • Auto - Select Language via selection on Android device with fall back to English
  • English - English
  • 日本語 - Japanese

This list will probably grow in the next few releases.

Wearables
This version added the "ActiveMode" service. For those unfamiliar with an Android Service, here is a blip from the documentation.

  • A Service is an application component representing either an application's desire to perform a longer-running operation while not interacting with the user or to supply functionality for other applications to use. Each service class must have a corresponding <service> declaration in its package's AndroidManifest.xml.

We now have the AndroidManifest declaration

  • <service android:exported="false" android:name=".smartnotifications.ActiveModeService"/>

This shows this feature is nearing the end of development, since the connection between the host (Android) and code (Ingress) has been made. Let me remind you that this feature is still ONLY enabled for those who have an email address ending in @google.com (in addition, I believe, to a server side flag).

This in addition to a handshake change shows that perfecting of this feature is still ongoing.

From the above diff report you can see they changed "amNearbyPortalDistanceM" from 40 to 200 meters. This is a hunch, but it looks like you used to get notifications from portals within 40m (which is in range of your hacking circle). Now this limit is 200m. Is this change for testing or permanent? We will monitor this number and update any changes that happen to it.

Portal Layouts
After the uproar occurred in the Ingress community regarding the placement of the HACK button. We knew changes would be coming. I'm not sure if this is the solution at hand or a temporary fix, but all the buttons have shifted locations. See the below screen shot of the previous version and 1.73.1. As you can see, the buttons have less padding between them and have grown in height. This should make it slightly easier to hit the HACK button with one hand.

Conclusion
This apk was built on March 20 and reached us on March 23. While the teardown seems small, this version was no easy task to complete. Language abstracting ~1,000 strings is tedious and boring, but in the end benefited those who wish to use the scanner in a non English language.

We will be back with 1.74.x.