Android アスペクト プログラミング実装 (AOP)

AOP

Android アスペクト プログラミングで
GitHub ウェアハウス アドレスを実装

導入

グラドル

allprojects {
    
    
    repositories {
    
    
        maven {
    
     url 'https://jitpack.io' }
    }
}

//如果使用aop,项目的build.gradle添加以下代码
dependencies {
    
    
    classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectjx:2.0.10'
}
//如果使用aop,app的build.gradle添加插件android-aspectjx
apply plugin: 'android-aspectjx'
// AOP 配置
// AspectJX默认会处理所有的二进制代码文件和库,为了提升编译效率及规避部分第三方库出现的编译兼容性问题,
// AspectJX提供include,exclude命令来过滤需要处理的文件及排除某些文件(包括class文件及jar文件)。
aspectjx {
    
    
     //只导入需要AspectJX处理的包com.zhangteng.aop必须添加
    include 'com.zhangteng.aop', '应用包名'
}

implementation 'com.github.DL-ZhangTeng:AOP:2.0.0'

aop ツールキット (com/zhangteng/aop)

ツールパッケージ名/クラス名 説明する
タイムログ 時間のかかるメソッドを出力する必要があるメソッドにこのアノテーションを追加します。
タイムログアスペクト 時間のかかるメソッド エントリ ポイントの処理ロジック
チェックネット ネットワーク検出を必要とするメソッドにこのアノテーションを追加します
チェックネットアスペクト ネットワーク検出メソッドのエントリポイント処理ロジック
権限 権限の申請が必要なメソッドにこのアノテーションを追加する
権限アスペクト 許可申請メソッドのエントリポイント処理ロジック
シングルクリック 繰り返しクリックを防ぐ必要があるメソッドにこのアノテーションを追加します。
シングルクリックアスペクト 反復クリック防止メソッドのエントリポイント処理ロジック

混乱

-keep public クラス com.zhangteng.**.*{ *; }

歴史的なバージョン

バージョン 更新する 更新時間
v2.0.0 BaseLibrary から AOP を分離する 2022/9/14 22:36

感謝する

AOP が気に入った場合、または AOP が役に立ったと感じた場合は、右上隅の「スター」をクリックしてサポートしてください。あなたのサポートが私のモチベーションです。ありがとうございます。

私に連絡して

電子メール: [email protected]/[email protected]

ライセンス

Copyright © [2020] [スイング]


本ソフトウェアおよび関連ドキュメント ファイル (「ソフトウェア」) のコピーを入手した人には、使用、コピー、変更、マージする
権利を含むがこれらに限定されない、制限なくソフトウェアを取り扱う許可が、ここに無償で与えられます。
、以下の条件を条件として、本ソフトウェアのコピーを出版、配布、サブライセンス、および/または販売すること、および本ソフトウェアが提供される人物にそのことを
許可すること。


上記の著作権表示およびこの許可通知は、ソフトウェアのすべてのコピーまたは主要部分に含まれるものとします。

ソフトウェアは「現状のまま」提供され、明示的か黙示的かを問わず、商品性、特定目的への適合性
、および非侵害の保証を含むがこれらに限定されない、いかなる種類の保証も行われません。
いかなる場合においても、
作者または著作権所有者は、契約行為、不法行為、またはその他の行為であるか
どうかにかかわらず、
ソフトウェアまたはソフトウェアの使用またはその他の取引に起因または関連して生じる、いかなる請求、損害、またはその他の責任に対しても責任を負いません。
ソフトウェア。

おすすめ

転載: blog.csdn.net/duoluo9/article/details/126879386