تخصيص تسجيل iOS

تتم معالجة تسجيل الدخول إلى نظام التشغيل iOS من خلال IOSLogHandler.java، والذي يلغي java.util.logging.Handler. يمكنك ضبطه كإعداد تلقائي من خلال إضافة مرجع logging.properties إلى تطبيقك، كما هو موضّح في LogManager.

تغيير معالِج التسجيل آليًا

لإضافة معالج تسجيل آليًا، استخدم الرمز نفسه الذي تستخدمه لتغييره في Java:

LogManager.getLogger("").addHandler(myHandler);

إذا كنت لا تريد تشغيل المعالجات الحالية أيضًا، عليك إزالتها أولاً باستخدام:

Logger logger = LogManager.getLogger("");
for (Handler h : logger.getHandlers()) {
  logger.removeHandler(h);
}

تغيير معالج التسجيل باستخدام ملف خاصية

  1. لتغيير معالِج التسجيل التلقائي باستخدام ملف Log.properties، يجب تحديد ذلك المعالِج هكذا (كما هو الحال مع تطبيقات Java):

    handlers=mycompany.mylogger.MyIOSLogHandler
    java.util.logging.ConsoleHandler.level=ALL
    

    يمكن أن يكون لهذا الملف أي اسم، ما دام هذا الاسم مستخدَمًا أثناء التحميل.

  2. بعد ذلك، أضِف الملف Log.properties كمورد لنظام التشغيل iOS إلى مشروعك.

  3. على عكس تطبيقات Java، يحتاج تطبيق J2ObjC إلى تحميل ملف الخصائص بشكل صريح:

    static {
      // Fetch a logger in case the following leaves logging in a bad state, such
      // as not adding the logging.properties resource or using a different name.
      Logger log = Logger.getLogger("configLogger");
      try {
        InputStream loggingProperties = SomeClass.class.getResourceAsStream("logging.properties");
        LogManager.getLogManager().readConfiguration(loggingProperties);
      } catch (IOException exception) {
        log.log(Level.SEVERE, "Error in loading configuration", exception);
      }
    }