独自のアンドロイドファームウェアを構築します。 必要なソフトウェア。 zipアーカイブ内のサードパーティファームウェアの変更

アンドロイドスマートフォンのほぼすべてのユーザーは、自分のニーズと欲望に合わせてファームウェアを作成または編集したいという欲求を持っていました。 この記事では、(zip形式の)CWMのファームウェアを編集する原則について検討します。

準備:

まず、どのファームウェアを基本として使用するかを決める必要があります。 それはオフを使用する方が良いです。 zipのファームウェア。 ほぼすべての共通デバイスにクリーンファームウェア+ルートがあります。
ファームウェアが選択されたら、PC上の任意の場所でダウンロードする必要があります(解凍しないでください)。
アーカイバも必要です。 7zip   その種類のテキストエディタのベスト メモ帳++.

雪だるまはあなたのshhをチェックします。 作業が完了すると、ファームウェアはデスクトップに表示されます! 現時点で最もファッショナブルなモジュールの選択をご覧ください。 このコードでは、10などの多くの機能を利用できます。 まず、これらの変更が危険ではないことを覚えておきましょう。 したがって、データの予備バックアップを行う必要があります。 さらに、モジュールがシステムレベルにアクセスできるようにデバイスを短くする必要があります。 ヒューマンエラーは決して無視してはいけません。

ファームウェアの構造:

ファームウェアを使用してアーカイブを開くと、次のように表示されます。
META-INF   - このフォルダには、ファームウェアのインストールスクリプトが含まれています。
システム   - すべてのファームウェアファイル(アプリケーション、調整、スクリプトなど)を含むフォルダ。
boot.img   - システムの中核。

ほとんどすべての操作はフォルダ内で実行されます システムその構造:
アプリ   - システムアプリケーション。
ビン   - システム自体のリソース。
  - スクリプト、調整、設定、プロファイル、システム設定。
フォント   - システムフォント。
フレームワーク   - メインのシステムファイルがここに保存されます(グラフィック、テキストアニメーション設定など)。
lib   - システムライブラリ。
メディア   - マルチメディアファイル(通知メロディ、ダウンロードアニメーション、壁紙など)。
usr   - 設定はシステムによってさらに変更されません(「読み取り専用」モードで動作します)。
xbin   - もう一度、システム構成と他の調整。
build.prop   - システム、ロケール設定、システムパフォーマンスに関する情報。

ただし、これはアプリケーションにのみ適用され、ブラウザで表示されるビデオには適用されません。 これは、電話機がスタンバイモードになっている場合にも機能します。 それは、それが提供する多くのオプションを理解するためには没頭が必要ですが、システムのほぼすべての要素の色を変更し、時計を隠す、オペレータのテキストを変更する、画面がオフのときに効果を追加する、最後のタスクメニューに " 。 言い換えれば、不可欠!

これを行うために、アプリケーションを削除するのではなく、通常の場合と同様にアプリケーションの権限を解決しますが、エラーを避けるために偽の情報を提供します。 このモジュールを使用すると、連絡先リストが空であるか、地理的な場所が実際の場所とはまったく異なると想定することができます。

アプリケーション:

システムにソフトウェアを追加/削除する前に、ファームウェアが無効になっているかどうかを確認する必要があります(つまり、アプリケーションフォルダ内に.odexファイルが存在するかどうかを確認する必要があります。ファイルがある場合は、 指示 .
ファームウェアにソフトウェアを追加する:
まず、スマートにアセンブリに追加するプログラムをインストールする必要があります。 インストール後に、システムを使用してそれらを取得します。 ルートエクスポージャー   そのアナログの場合、それらはdata / appパス上にあるので、データ/データパス上にあるかどうか(当然のことながら)必要になります。 彼らは同じ名前のアプリケーションフォルダにあり、拡張子を持っています .so   。 その後、押収された .apk   ファイルはシステム/アプリケーションパスのアーカイブに保存され、拡張子は .so   (lib "s)はパスシステム/ libに沿っています。
ファームウェアからソフトウェアを削除します。
すべてがシンプルで、フォルダに移動します アプリ   - 不要なソフトウェアをすべて削除し、不要なソフトウェアをすべて削除します(システムは接触しないほうが良い)。

スマートフォンユーザーの最悪の災害に対するソリューションを強化する:自主性が低い さまざまなプロセスが電話で「起きる」頻度を設定し、プロセッサを呼び出すことで、貴重な時間を節約できます。 スマートフォンをポータブルメディアプレーヤーとして使用する場合、スマートフォンのサウンドを微調整するのに最適です。

多くのアプリケーションをダウンロードする人は、仕事を遅くする傾向に気付くでしょう。 これは、システム起動時にバックグラウンドでアプリケーションを実行していることが原因です。 ギャラリーから写真を共有する、新しい描画ツールが登場する、フィルタを追加する、写真を読むときにタイマーを削除する機能など、多くの機能があります。 もちろん、何百ものモジュールがあり、この一覧は網羅的ではありません。 お気に入りのモジュールを無料で共有してください。

言語とファームウェアのバージョン:

build.propファイルをデスクトップにコピーします。 ノートブックでそれを開き、次の行を見つけます:

ro.product.locale.language = en
ro.product.locale.region =米国

ロシア語の場合は、これを行う必要があります:

ro.product.locale.language = en
ro.product.locale.region = RU

私たちはmodの名前を文字列に入力します

同じbuild.propで

グラフィックス:

ファームウェアのグラフィック部分全体は、2つのファイルframework-res.apkファイルパス システムフレームワーク   そして途中のSystemUI.apk システムアプリ。 また、設定アプリケーションのグラフィカルな部分は、Settings.apkアプリケーションに自然に格納されます。

さらに、他のアプリケーションでは、これは最初と最後に紛争であるため、見つけるべきリンクはありません。 広告ブロック例外に場所を追加する。 いずれにせよ、私たちはあなたの選択を尊重します。あなたがブロックを解除しないことを決定した場合でも、制限なくサイトを使用することができます。

この記事では、実行される簡単な手順を見ていきます。 その中で重要なのは、スマートフォンのシステムパーティションをバックアップすることです。 オープニングセクションでは、バックアップに含めるセクションを選択するように求められます。 それらが存在する場合は、現在のオペレーティングシステムを正常に復元するためにそれらを選択する必要があります。 万一、腐敗が起きたとしても、私たちはいつでもそうすることができます。 。 他のセクションがある場合は、公式文書でバックアップから除外することを強くお勧めします。

スクリプトと調整(システムの加速と最適化):

ほとんどの設定はファイル内にあります。 build.propあなたはこれについて読むことができます。 あなたのカーネルがサポートしている場合

こんにちはハブ!

数年前、私がAndroidに初めて出会ったとき、私は仕事の同僚から、Androidが変更されたファームウェアまたは自作のファームウェアをインストールする機能を提供していると聞きました。 率直に言って、私はそれにはほど遠いです。 そして半年前でさえ、私はそんなことにほとんど関心がありませんでした。 シャワーの奥深くで、私はメーカーがやっていたことが、通常の使用のためにすでに意図されていたと確信していました。

先に進む前に、上部にある「名前」フィールドをクリックして、バックアップファイルの名前をカスタマイズするのは間違いありません。 バックアップ時間は長くなりますが、その結果、アーカイブはギガバイト形式で小さくなります。 最後に、スライダを右にドラッグしてバックアップの作成を開始します。

手順5:選択したアーカイブの空き容量が足りません。

場合によっては、エラーが発生することがあります。 選択したアーカイブ空き容量が不足しています。 これは、アプリケーションとデータと同様に、バックアップはデフォルトでデバイスの内部メモリに保存されているためです。 十分なスペースがない場合、エラーが発生します。

Google、Skype、Facebookなどのアプリケーションの使用が工場設定で禁止されていた中国から携帯電話を購入したときの私の失望はどうでしたか? 原則として、いくつかの点で私の目を閉じることができましたが、私の電話ではGoogleアカウントの使用を暗示していないときに、私は必ずしもそうする必要がないことを約束しました。

この問題を解決するには、もう一度試す前にいくつかの選択肢があります。 最大のものであれば、おそらく利用可能な領域はシステムデータだけをバックアップするのに十分です。 したがって、バックアップはキーに直接書き込まれます。 。 すべてをコンピュータのハードドライブに移動して、モバイルデバイスの空き容量を確保し、内容を確認します。バックアップに割り当てられた名前の「デバイス識別子と最後のディレクトリ」という3番目のサブフォルダが必要です。

半年が過ぎ、私のカスタムファームウェアは世界中でうまく使用されています。

この一連の記事では、Android向けに逆のプログラミングを行い、パッチ、調整、改造を実装する方法について説明します。

プリアンブル

  そしてそう! 最初に使用される概念を定義しましょう 与えられた   記事。 しかし、あなたの通常の理解は、非常に異なる場合があります。

パッチ   - プログラムアルゴリズムを変更するために、既存のプログラムコードを変更または置換すること。
Mod   - 原則として、アルゴリズムを変更せずに既存のプログラムコードに機能を追加する。
微調整   システムパラメータへのアクセスを容易にするために、プログラムの機能を改善する。

ステップ7:写真、文書、およびその他のデータに注意してください!

広告ブロッカーブロックに場所を追加してください。 私たちは非営利のプロジェクトであり、費用を支払うには広告が必要です。 すべての質問に答えるために、本の第2版があります。 多くのユーザーがスーパーユーザーになり、ウイルスを駆除し、デバイスのシステムを更新し、新しいアプリケーションを開きます。 各メーカーは、ブランドを特徴付ける特別なアプリケーションと機能を追加しています。 同じ機器を使用するこれらの設定は、パフォーマンスを向上させ、バッテリーの寿命を延ばし、流動的なアニメーションを提供し、デザインを魅了し、特に最高のスマートフォンに魅力的な革新的な機能やユニークな機能をもたらします。

また、すべての例がHTCの電話機で取られることに注意したいが、これは他の電話機でこの情報を使用できないことを意味するものではない。

以下の情報を使用した結果、お客様の電話機でデータが失われる可能性について、著者として責任を負いません。

環境整備

  私は、このソフトウェアやそのソフトウェアの使い方に関する詳細な指示なしに行うことができます。 この記事に興味があり、これらの行を読み終えたら、あなたは既に経験豊富なユーザーであり、この分野で、よく、あるいは少なくとも実験的な経験を持っていることを願っています。 しかし、Habréのように、説明書、記事、テスト結果は完全に利用可能です。 私はまた、いくつかの用語の説明なしで管理します。さもなければ、記事は非常に大きくて面倒です。 私たちはこのケースでのみ書きます。 私はあなたの環境が長い間立っていると確信しています。 そうでない場合は、ダウンロードしてインストールすることをお勧めします。

1 . Android SDK   。 これはAndroid向けのアプリケーション開発環境です。 変更を加えるために、我々は間違いなく私たちのプログラムコードをチェックする必要があります。 開発環境は私たちが使える最高のものです。
2 . Androidキッチン   。 このユーティリティを使用すると、公式ウェルまたは非公式ファームウェアのシステムパーティションのイメージを操作できます。
3 . Jd-gui   。 Java言語コード逆コンパイラ。 直ちに、私はこれが使いやすさの観点から最良の逆コンパイラであることに注意します。
4 . DJ Java Decompiler   。 別の逆コンパイラ、または逆アセンブラは、Javaプログラミングコードです。 使用に関しては便利ではありませんが、JD-GUIを理解できないコードを解析します。
5 . スマリ 。 別の逆アセンブラですが、すでにdalvikコードです。 逆アセンブルにはsmaliが必要であり、コードをアセンブルするにはバックスペースが必要です。
6 . dex2jar   。 実行可能ファイルを変換するためのユーティリティDalvikコード。

この手順から得られる利点は異なります。 まず、最小限のインターフェース、新しいアニメーション、カラフルなテーマ、オリジナルのエフェクトを選択することで、パーソナライズの欲求を与えることができます。 次に、新しいファームウェアをインストールすることを考えます。これは基本的なコンソールを必要とするため、経験豊富な武力の忍耐にのみ推奨され、インストール手順中に発生する可能性のある問題を解決する準備ができています。




あなたは大きなジャンプをすることに決めましたか? すべての「平均的なユーザー」は、自社製品の優れた品質で知られるこの開発チームの名前を知っています。 それらの違いは回復です。 残念ながら、このオプションは開発者のオプションからは消えています。


拡張プロファイルを使用すると、スマートフォンの電源を切るか、オーディオ入力のためのその他の条件を設定できます。

ファームウェア変換

  もちろん、製造元の電話機に搭載されているファームウェアは、エネルギー消費を削減するために最適化されています。 ファームウェアを変更できるようにするには、コードを変更できる形式に変換する必要があります。 Android Kitchenを使用しています。 私はこれを "キッチン"と見なすまで、以前と同じように、あなたの手で行えます。 システムエリアを電話から引き出し、環境を設定し、DEODEXファームウェアを作成し、インターネットで読むことができます。 あなたがまだ何かを理解していないなら、あなたは十分な経験を得るまで記事を延期すべきだと思います。

最適化されたビュー(ODEX最適化されたdalvik実行可能コード、メモリが私を変更しない場合)からファームウェアがDEODEX(最適化されていない)になった後、すべての実行可能ファイルは変更可能です。







その利点は更新の頻度です。





非常に軽いシステムはほとんどなく、アプリケーション概要も最適化されています。一度にすべてを閉じることができます。 残念ながら、彼にはいくつかの提案があり、更新はまれです。 プロジェクトは1年間放棄されたが、夏以降コンサートから帰った。


提供される機能の範囲は骨に縮小されます。 ルートコードさえも魅力的ではありません。

直接修正

パッチの作成
既に述べたように、私の携帯電話は当初、Googleの使用を禁止していました。 まあ、少なくともバースト、Playstoreに行かないで、あなたのアカウントを構成しないで、電話帳は本当に同期していません。 なぜあなたはそのようなAndroidが必要ですか? デバイス自体のログ(logcat)を掘り下げたところ、Googleの使用が禁止されているという記録が見つかりました。 Androidで最も不便なのは、ログを見るのですが、どのシステムアプリケーションがそれを生成しているのか分かりません。 足がどこから成長するかを知るためには、すべてのシステムアプリケーションを逆アセンブルしたJavaコードに置き換えなければなりませんでした。 これにはかなりの時間がかかりましたが、私はまだ完了した作業を分析し、必要なコードを検索します。 このツールを入手する手順は次のとおりです。
1 。 すべてのファームウェアを削除する
2 。 新しいDEODEXファームウェアを組み立てて携帯電話にフラッシュする必要があります。 これがどのように行われたかは別の記事の話題です。
3 。 / system / frameworkにある各ファイルから、classes.dexファイルを取り出し、dex2jarを使用してJARに変換します。
4 。 各JARをJD-GUIで開き、ソースコードに再保存します。
5 。 アーカイブからソースコードを解凍します。

その結果、/ system / frameworkにJARファイルが存在するフォルダをいくつでも取得でき、各フォルダにはJavaソースコードの構造がありました。
  簡単な操作で、私はすぐにlogcatエントリを生成した場所を見つけました。




しかし、コミュニティは減少しており、常に需要を満たすとは限りません。 続行する前に、あなたの手をどこに置くかを必ず確認してください。 この記事はEric Hermannと共同で書き直されました。 通常、デバイスを更新するには2つの方法があります:自動または手動ですが、もう少し複雑です。

自動更新を行う方法

これが起こると、アップデートのインストール準備が整ったという通知が表示されます。メッセージをクリックするだけです。 手動で更新するための最初の手順は、デバイスにインストールする必要のあるものを検索することです。 ソフトウェアの更新が検索されますが、公式の更新のみが利用可能になります。

私たちは禁止のすべての論理を考慮しません。それぞれの場合について別個の話です。 私はチェックが行われる場所を見つけ出す前に数時間を費やさなければならなかった。アルゴリズムのブロックダイアグラムを頭に入れて、どこに行くべきか理解して、アルゴリズムをちょっと "腐った"ものにする必要があった。

それはすべて簡単に判明しました。 電話機が中国に属しているかどうかに応じて、所定の定数に基づいてコールに応答するサブルーチンがあります。

プログラムをインストールした後、「電話番号を確認」ボタンをクリックするだけです。 プログラムはあなたのデバイスの正式なアップデートをインストールします。 カスタムリカバリ。 あなたがお使いのデバイスやメーカーの下に指定された互換性のあるプログラムが表示されない場合は、あなたの最良のオプションは、お使いのデバイスのカスタム回復をインストールすることです。

おそらく、誰もがこれまでアプリケーションをブロックし、何のタップと指の動きを認識しない、表示を「フリーズ」されています。 これは非常に不快なことがあります。特に、何かをすばやく行う必要がある場合は特にそうです。 スマートフォンの[最近使ったアプリケーション]ボタンをクリックして、開いているアプリケーションのマルチタスクメニューを起動します。 ほとんどの場合、ナビゲーションバーの右側にある四角形のボタンを使用してこれを行うことができます。 あなたのデバイスが持っていない場合は、同じ効果を得るために長い時間ホームボタンを保持する必要があります。

コードがファイルにありました HTCExtension.jarこのサブルーチンを含むクラスが

元のファイルの解凍と解析
1 。 最初に必要なコードの一部を担当する元のDEODEX JARファイルを取得する必要があります。 私たちの場合 HTCExtension.jar.
2 。 任意のアーカイバで開き、そこからclasses.dexをプルします。
3 。 dex2jarコンバータを使用して、JARファイルに変換します。 チーム:dex2jar.bat classes.dex
4 。 受信したclasses_dex2jar.jarファイルをJD-GUIで表示します。
5 。 はい、それはオリジナルに見えるように、コード逆コンパイルJD-GUIのほとんどは、それが理解できる、ではないですが、読み取ることが可能です。 ソースコードでは、サブルーチンがプロジェクトパラメータとファームウェアの言語フラグをチェックすることがわかります。 残念ながら、戻り値はTRUEです。
  パブリック静的ブールisChina()(IF((HtcBuildFlag.Htc_PROJECT_flag == 216)||(HtcBuildFlag.Htc_PROJECT_flag == 218)||(HtcBuildFlag.Htc_PROJECT_flag == 23));(((HtcBuildFlag.Htc_PROJECT_flag == 1)、一方 &&(2 == HtcBuildFlag.Htc_LANGUAGE_flag))||(HtcBuildFlag.Htc_PROJECT_flag == 27))がtrueを返す; falseを返します;)
6 。 パッチを作成するには、Dalvikコード自体を逆アセンブルする必要があります。 このために我々はbaksmaliを使用する。 最も便利な方法は、別々のフォルダを作成し、そこに3つのファイルをまとめることです。 HTCExtension.jar, smali.jar   と baksmali.jar。 私たちは、コマンドjavaを与える-Xmx512m -jar baksmali.jar -a -d -o HTCExtension -x HTCExtension.jar

これはあなたのAndroidバージョンのAPIです。 JBは16です
   - すべてのファームウェアフレームワークが置かれているフォルダ。

左または右に閉じるアプリケーションに指をスワイプします。 その後、アプリケーションが画面から消え、バックグラウンドでの作業が停止します。 大手メーカーは、開いているすべてのプログラムをブロックする追加のボタンも提供しています。 プログラムに問題が頻繁に発生する場合は、プログラムを更新または削除して再インストールしてみてください。 駐車している車の多い巨大な駐車場にいたことがある場合は、おそらく車を駐車した場所を検索する必要があります。

あなたが写真の記憶に恵まれない場合、大きな駐車場で駐車している車を見つけるのは簡単なことではありません。 幸いにも、技術はあなたを助けることができます。 アプリケーションの無料版は、携帯電話のメモリに車の位置を維持するために衛星測位を使用します。 あなたがあなたの車を検索し始めるとき、 "車を見つける"ボタンを押すとアプリケーションのコンパスが引き出されます。これはあなたの駐車している車の方向を示すアニメーションの矢印を意味します。

私の場合、それはチームだった。
  Javaの-Xmx512m -jar baksmali.jar -a 16 -d S:\\ DEV \\アンドロイド\\アンドロイド、キッチン\\ WORKING_JB_15 \\ SYSTEM \\枠組み-o HTCExtension -x HTCExtension.jar
7 。 新しく作成されたフォルダにはHTCExtensionというフォルダがあり、そこにはDalvikコードのファイルがあります。
8 。 途中でファイルを見つける \\ com \\ htc \\ util \\ contacts \\ BuildUtils $ Customization.java   コードを見てください:
  S CONST / 16 V2、0xd8 IF-EQ V1:\u003e Htc_PROJECT_flag - ;パブリック静的isChina()Zの.registers 3 .prologue CONST / 4 V0、0x1の.LINE 276 SGET短V1、LCOM / HTC / htcjavaflag / HtcBuildFlagを.method 、V2 ,: cond_13 SGET短V1、LCOM / HTC / htcjavaflag / HtcBuildFlag; - \u003e Htc_PROJECT_flag:S CONST / 16 V2、0xda IF-EQ V1、V2 ,: cond_13 SGET短V1、LCOM / HTC / htcjavaflag / HtcBuildFlag ; - \u003e Htc_PROJECT_flag:SのCONST / 16 V2、0x17の場合、NE V1、V2 ,: cond_14 .LINE 297:cond_13:戻りgoto_13 V0 .LINE 283:cond_14のSGET短V1、LCOM / HTC / htcjavaflag / HtcBuildFlag; - \u003e Htc_PROJECT_flag:S IF-NE V1、V0 ,: cond_1d .LINE 285 CONST / 4 V1、0x2というのSGET短V2、LCOM / HTC / htcjavaflag / HtcBuildFlag; - \u003e Htc_LANGUAGE_flag:S IF-EQ V1、V2 ,: cond_13 .LINE 291:cond_1d SGET短いV1、LCOM / HTC / htcjavaflag / HtcBuildFlag; - \u003e Htc_PROJECT_flag:SのCONST / 16 V2、として0x1B IF-EQ V1、V2 ,: cond_13 .LINE 297 CONST / 4 V0、0x0の後藤:goto_13 .END 方法
9 。 恐ろしいですね。 何も明らかではない。 しかし、これは修正可能な問題です。 あなたのパッチのいくつかを作成し、あなたの手を埋めると、サードパーティのツールを使わずにコードを簡単に修正できます。 私たちの場合、このコードでは
  .prologue const / 4 v0、0x1は変数v0に1の値、つまりTRUEを割り当てます。 次に、すべての種類の小切手があり、電話が中国語でない場合は、変数の値が変更されます。
  .line 297 const / 4 v0、0x0 goto:goto_13
10 。 ロシアの民主主義の父親を救う最も簡単な方法は、コードを次のように変更することです:
  .prologue CONST / 4 V0、0x0の、すなわち)にかかわらず、常にFALSEを返すであろうとJD-GUIコードは、パブリック静的ブールisChina(どのようになるか、されていない1から0に、変数の値を変更すること、である(((IF Htcbuildflag.htc ||(HtcBuildFlag.Htc_PROJECT_flag == 27))はfalseを返します。falseを返します;)
11 。 はい、このメソッドは機能します。 しかし、私たちは簡単な方法を探しているわけではありません。 第二に、それほど美しくない。 私は何かのようなコードをしたい
  public static boolean isChina()(falseを返します)
12 。 そして、このソースコードのDalvikコードはどうやって入手できますか? 初心者の方にはちょっとしたトリックをします。

ダルビックコードを作成する
1 。 Android SDKを開きます。
2 。 新しいプロジェクトを作成し、唯一のテストクラスでは次のコードを記述します
  パッケージru.habrahabr.test; パブリッククラステスト(public static boolean isChina()(return false;))
3 。 私たちはプロジェクトをコンパイルし、組み立てられたアプリケーションをワークスペースから取り出します。
4 。 収集したアプリケーションを、JARファイルを取得したフォルダに置きます。
5 。 java -Xmx512m -jar baksmali.jar -a -d -o test -x test .apkコマンドを実行します。
6 。 新しく作成したアプリケーションをDalvikコードに分解しました。
7 。 test.smaliファイルを開き、そこのコードを見てください
  .methodパブリック静的isChina()Zの.registers 1 .prologue .LINE 7 CONST / 4 V0、0x0のリターンV0の.END方法
8 。 パッチのコードはすべて準備ができています。
パッチのローリング
1 。 Dalvikコードは、元のソースファイルのコード行を示すマーカーで囲まれています。 これは、プログラムにエラーがある場合は、それを表示する場合に必要です。 文字列がなければ、コードもうまくいきます。
2 。 行番号付き行の削除、コピーと置換の方法(サブルーチン) \\ com \\ htc \\ util \\ contacts \\ BuildUtils $ Customization.java   ファイル。
  。静的静的isChina()Z。レジスタ1。プロローグconst / 4 v0、0x0戻り値v0 .endメソッド
3 。 ファイルを保存します。 はい、私は言うことを忘れて、エディタは通常のもの、例えば、Notepad ++やEditPlusが必要です。 誰が何を好きですか?
パッチを適用したJARファイルのコンパイルと構築
1 。 バックスマイルの助けを借りて、私たちはJARファイルを掘り下げました。今はそれを元に戻す必要があります。
2 。 コマンドjava -Xmx512m -jar smali.jar -a 16 HTCExtension -o classes.dex
3 。 classes.dexファイルは私たちのパパに現れます
4 。 再び開く HTCExtension.jar   アーカイバにファイルを保存し、既存のアーカイブファイルを置き換えます classes.dex   新しく作成されました。
5 。 私たち全員 HTCExtension.jar   変更されたプログラムコードを含む。
元のファイルをパッチされたファイルに置き換える
  通常、通常のユーザーの場合、回復で置き換えられる特別なスクリプトが作成されます。 しかし、私たちは興味がありません。 第一に、それは長くて退屈です。第二に、私たちは経験豊富なユーザーであり、若干の微妙な余裕があります。

1 。 すでにDEODEXファームウェアを持っていて、root権限を持っている場合は、現在の作業ファイルを次のコマンドに置き換えることができます。

Adb push HTCExtension.jar /sdcard/HTCExtension.jar adbシェルsuマウント-o再マウント-rw / system dd if = / system / framework / HTCExtension.jar of = / system / framework / HTCExtension.jar.back dd if = / sdcard /システム/フレームワーク/ HTCExtension.jarの/HTCExtension.jar chmod 644 /system/framework/HTCExtension.jar rm / data / dalvik-cache / [電子メールで保護された]@[電子メールで保護された]   リブート

第1チームはパッチを適用したファイルをUSBフラッシュドライブにアップロードします
  2番目のコマンドはシェルを開きます
  3番目のコマンドはルートアクセス権を与えます
  4番目のコマンドは、システムを読み取り/書き込みモードでマウントします
  チーム5がバックアップファイルを作成する
  6番目のコマンドは、既存のファイルを新しいパッチ適用済みファイルで上書きします。
  第7チームがパーミッションを設定する
  8番目のコマンドはキャッシュを削除します
  チーム9はデバイスを再起動します。

2 。 この点をお読みいただきありがとうございます、それは少し残っています。
3 。 再起動後、新しいパッチコードが有効になります。
4 。 コードが機能しない、またはエラーがポップアップした場合、トリッキーな組み合わせでは、バックアップを元に戻すことができます。
  / system / framework / HTCExtension.jarの/ system / framework / HTCExtension.jar.back rm / data / dalvik-cache / adbシェルのマウント-o再マウント-rw / [電子メールで保護された]@[電子メールで保護された]   リブート

エピローグ

  はい、この記事は、誰かにあまりにも明確ではないように見えましたが、あまり明確ではない人には見えましたが、役に立たなかった人に見えました。 私は意図的に、それがどのように生き生きと現実に見えるかについての詳細な説明とイラストレーションをしなかった。 まず、この作品は恩知らずで、より多くの疑問を提起するだけです。 第二に、私は彼らが電話を殺したと不平を言うフォーラムでユーザーの軍隊を見たいとは思わない。

次の記事で私はtvikiを行う方法を教えます。 電話の本来の手段による電話の自動録音の使用例があります。 ご注意いただきありがとうございます。

P.S. 何かが明確でないか混乱している場合は、質問をしてください。私はいつも答えて説明することができます。

テーマを継続する:
スマートテレビ

Samsung TVがオンにならない場合は、ウィザードを呼び出す前に、自分で装置を修復することができます。 まずあなたは生産する必要があります...