为什么 public 方法需要记录调用?
Why do public methods require logging calls?
我做了一个public class AlertDialogManager 如下图,
public class AlertDialogManager {
/**
* Function to display simple Alert Dialog
* @param context - application context
* @param title - alert dialog title
* @param message - alert message
* @param status - success/failure (used to set cancelable)
* */
public void showAlertDialog(Context context, String title, String message, Boolean status) {
Log.i("DEBUG","Alert has been called");
new AlertDialog.Builder(context)
.setTitle(title)
.setMessage(message)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Log.i(CommonUtilities.TAG,"ok has been clicked");
}
})
.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Log.i(CommonUtilities.TAG,"Cancel has been clicked");
}
})
.setIcon(R.drawable.alert)
.setCancelable(status)
.show();
}
}
因此,我在 android 工作室中收到此警告。
如您所见,同样的错误“'public' 方法 'showAlertDialog()' 没有记录调用
报告任何不包含日志语句的 public 方法。此检查不报告简单的 getter 和 setter
这对 class AlertDialogManager、它的方法 showAlertDialog 和两个 onClick 重复。
通过记录我认为它们的意思是 Log.i("TAG","Message") 并相应地添加了它们。
所以,我似乎无法理解这个警告。因此,我感谢任何有助于理解它的帮助。
您启用了更多 lint 检查 - 可能是全部。
这是我这边的截图:
所以我在这里打开设置,然后在搜索框中输入 logger。可以看到选中的lint检查:Class without logger
所以这是在 Java -> 日志记录问题 中。在我的例子中,它没有启用,我使用默认设置进行 lint 检查(检查)。我认为这可能对 Java 应用程序更有帮助,但是我没有在纯粹的 Java 中使用过这样的记录器,所以我不能确定。无论如何,我建议您禁用此检查,除非它对于您的 team/company...
是强制性的
您使用的日志 class 是 Android SDK 的一部分,我想这可能是它没有 'fix' 警告的原因。
我做了一个public class AlertDialogManager 如下图,
public class AlertDialogManager {
/**
* Function to display simple Alert Dialog
* @param context - application context
* @param title - alert dialog title
* @param message - alert message
* @param status - success/failure (used to set cancelable)
* */
public void showAlertDialog(Context context, String title, String message, Boolean status) {
Log.i("DEBUG","Alert has been called");
new AlertDialog.Builder(context)
.setTitle(title)
.setMessage(message)
.setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Log.i(CommonUtilities.TAG,"ok has been clicked");
}
})
.setNegativeButton(android.R.string.cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Log.i(CommonUtilities.TAG,"Cancel has been clicked");
}
})
.setIcon(R.drawable.alert)
.setCancelable(status)
.show();
}
}
因此,我在 android 工作室中收到此警告。
如您所见,同样的错误“'public' 方法 'showAlertDialog()' 没有记录调用 报告任何不包含日志语句的 public 方法。此检查不报告简单的 getter 和 setter
这对 class AlertDialogManager、它的方法 showAlertDialog 和两个 onClick 重复。
通过记录我认为它们的意思是 Log.i("TAG","Message") 并相应地添加了它们。
所以,我似乎无法理解这个警告。因此,我感谢任何有助于理解它的帮助。
您启用了更多 lint 检查 - 可能是全部。
这是我这边的截图:
所以我在这里打开设置,然后在搜索框中输入 logger。可以看到选中的lint检查:Class without logger
所以这是在 Java -> 日志记录问题 中。在我的例子中,它没有启用,我使用默认设置进行 lint 检查(检查)。我认为这可能对 Java 应用程序更有帮助,但是我没有在纯粹的 Java 中使用过这样的记录器,所以我不能确定。无论如何,我建议您禁用此检查,除非它对于您的 team/company...
您使用的日志 class 是 Android SDK 的一部分,我想这可能是它没有 'fix' 警告的原因。