私は最近、いくつかのスマリコードを掘り下げており、それを学びたいと思っています. dalvik バイトコード リファレンスを確認しましたが、これらをいつ/どのように使用するかに関する構造リファレンスが見つかりませんでした
.locals
.local
.registers
.prologue
.line
.annotation
.parameter
smali 構造の詳細を説明する他のリソースを知っていますか?
これらのほとんどは、.locals、.registers、および .annotation を除いて、メソッドの一部として保存されるデバッグ情報の一部です。これらの詳細については、 dex-formatドキュメントの debug_info_item セクションを参照してください。
.locals および .registers ディレクティブの場合、メソッドで使用できるレジスタの数を指定する 2 つの異なる方法があります (つまり、dex 形式のドキュメントによると、code_item の register_size フィールド)。2 つの違いの詳細については、smali googlecode サイトのRegisters wiki ページを参照してください。
最後に、.annotation ディレクティブで注釈を定義します。詳細については、dex 形式のドキュメントを参照してください。具体的には、次の項目を確認する必要があります。