皆さん、こんにちは。 今日は、iOS用VKontakteアプリケーションの処理プロセスがどのように行われたかについてお話したいと思います。
新しいアップデートでは、18以上のコンテンツのためにクライアントから表示されない有料の音楽とページが存在することを誰もが知っています。 これは、アプリケーションが「AppStore」でモデレートされるように行われました。
実際、これらの「革新」により、会社に対する否定的な感情が急増しました。 したがって、私もそれを好きではなかった。 「Google Playミュージック」のようなサブスクリプションのようなものがあったとしても、アプリケーションを「処理する」ことは考えません。
プロセス自体に取りかかりましょう。
まず、vkapiへのリクエストで何が変わったのかを調べることにしました。そのため、スニファーで武装して、アプリケーションがノッキングしている場所を聞き始めました。
オーディオ録音を検索すると、クエリは次のようになりました。
少し考えた後、その理由は「ユーザーエージェント」にあると考えられました。 そうです。 たとえば、「com.vk.vkclient / 13」を「com.vk.vkclient 13」に置き換えると、オーディオ録音が完全に検索されます。 問題は、クライアントに変更を加えるために、小さいままです。
私はObjCでのプログラミングには程遠いので、アーカイバでアプリケーションパッケージを開き、HEXエディタでさらに調査および操作するために実行可能ファイルを抽出するより論理的なオプションは見つかりませんでした。
通常の検索では、「User-Agent」への参照が見つかります。 次のようなものが表示されます。
「処理」の場合、1バイトだけを置き換えるだけで十分です。
55 73 65 72 2D 41 67 65 6E 74 00 25 40 20 25 40 20 28 25 40 2C 20 25 40 20 25 40 2C 20 25 40 2C 20 53 63 61 6C 65 2F 25 66 29
その結果、「User-Agent:com.vk.vkclient 13」になります。 すべてをバックパックしてデバイスに配置し、iTunesから完全に解放されたアプリケーションと18以上のコンテンツを開きます。

PS:オフラインモードのバージョンについては説明しません。アクションの原則はこの処理と同じです。