Skip to content

Java에서 호출이 필요한 경우에 대한 README.md 업데이트 제안 #2

@tnwlsgk1002

Description

@tnwlsgk1002

Java에서 사용하는 법도 README.md 에 있으면 좋을 듯 합니다

  CrashHandlerDslKt.installCrashHandler(this, config -> {
      config.providers(providers -> {
          providers.useDefault();
          return Unit.INSTANCE; 
      });
      return Unit.INSTANCE; 
  });

만약 java 호출까지 고려하고 있다면 아래처럼 Builder 패턴은 어떨지 제안합니다

  // Kotlin 파일에 추가
  class CrashHandlerBuilder(private val application: Application) {
      private val config = CrashHandlerConfig()

      fun useDefaultProviders(): CrashHandlerBuilder {
          config.providersConfig.useDefault()
          return this
      }

      fun addProvider(provider: CrashInfoProvider): CrashHandlerBuilder {
          config.providersConfig.add(provider)
          return this
      }

      fun addProviders(vararg providers: CrashInfoProvider): CrashHandlerBuilder {
          config.providersConfig.addAll(*providers)
          return this
      }

      fun install(): GlobalExceptionHandler {
          return GlobalExceptionHandler.install(application, config)
      }
  }

  @JvmStatic
  fun crashHandler(application: Application): CrashHandlerBuilder {
      return CrashHandlerBuilder(application)
  }

 //  Java에서 사용:
  CrashHandlerDslKt.crashHandler(this)
      .useDefaultProviders()
      .addProvider(new MyCustomProvider())
      .install();

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions