我可以创建一个注释来进行类调用吗
Log.e("", "")
并将方法所在的类的名称作为第一个参数,方法名称作为第二个参数?
像这样:
public class UploaderService {
@Debuggable
void onUploadProductSuccess(int productServerId) {
}
}
Logcat 输出:
UploaderService | onUploadProductSuccess 43
在 Android 中使用它还有什么注意事项吗?
最佳答案
您的问题已经得到解答here . 简而言之,是的,有点。 您可以为日志记录或任何其他目的创建自定义注释,但您必须使用同样适用于 Android 的反射实现检查类中注释的代码。
如果这对您很重要,那么您应该创建一个代理对象来获取服务名称、方法 + 参数列表参数。
像这样:
调用:
callServiceMethod("UploaderService","onUploadProductSuccess",productServerId);
方法来源:
public void callServiceMethod(String serviceName, String methodName, Object... paramList){
Object service = ;//getting the service object by name
//getting the method
Method method = service.getClass().getMethod(methodName, paramList[0].class,...);
for ( Annotation a : m.getAnnotations() ) {
// if the annotation found then write to log
}
//in the end:
method.invoke(service , paramList[0], ...);
}
在此方法中,您可以在调用实际方法之前检查被调用服务的注释。
如您所见,调用了该方法并写入了日志,但您必须调用上面的方法而不是调用 UploaderService.onUploadProductSuccess。
关于java - 如何为要输出到 LogCat 的类编写注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30138717/