Google Android Codelab 코드 스 니펫 라이선스

Oct 29 2020

MyFeedItem 코드 랩의 스 니펫 을 사용 하기위한 리사이클 러 뷰를 생성한다고 가정하겠습니다.

먼저 아래 파일을 만들기 위해 언급 된 코드 랩에서 스 니펫을 복사합니다.

class SleepNightDiffCallback : DiffUtil.ItemCallback<SleepNight>() {

override fun areItemsTheSame(oldItem: SleepNight, newItem: SleepNight): Boolean {
          return oldItem.nightId == newItem.nightId
    }

    override fun areContentsTheSame(oldItem: SleepNight, newItem: SleepNight): Boolean {
         return oldItem == newItem
    }
}

그냥 교체 SleepNight와 함께 MyFeedItemnightId함께 id아래에 "내"소프트웨어를 생성하는

class MyFeedItemDiffCallback : DiffUtil.ItemCallback<MyFeedItem>() {

override fun areItemsTheSame(oldItem: MyFeedItem, newItem: MyFeedItem): Boolean {
         return oldItem.id == newItem.id
    }

    override fun areContentsTheSame(oldItem: MyFeedItem, newItem: MyFeedItem): Boolean {
        return oldItem == newItem
    }
}

간결함을 위해이 파일이 소프트웨어에서 생성 된 유일한 파일이고이 소프트웨어를 상업적으로 판매한다고 가정하겠습니다.

  • 여기에 저작권 위반이 있습니까? (웹 사이트에 라이선스 정보가 언급되지 않은 경우)
  • 그렇다면 해결 방법은 무엇입니까?
  • 동일한 시나리오에 대해 스 니펫이 MIT 라이선스하에 있고 내가 상업적으로 판매하는 것과 동일한 단일 파일 소프트웨어를 생산하고 비공개 소스로 유지한다고 가정 해 보겠습니다. 저작권 위반이 있습니까? 그렇다면 해결책은 무엇이며 비공개 소스로 유지할 수 있습니까?

답변

1 BartvanIngenSchenau Oct 29 2020 at 17:40

여기에 저작권 위반이 있습니까? (웹 사이트에 라이선스 정보가 언급되지 않은 경우)

실제로 주어진 라이선스가 없다면 복사 및 / 또는 변경을위한 라이선스가 필요하기 때문에 실제로 코드의 저작권을 위반 한 것입니다.

그러나 코스의 개요 페이지에는 라이센스 정보가있는 페이지에 대한 링크 있습니다 (https://developer.android.com/license) 및 해당 페이지 상태

달리 명시되지 않는 한, 여기에 표시된 모든 코드를 포함하여이 사이트의 문서는 Apache 2.0 라이선스에 따라 귀하에게 제공됩니다.

Apache 2.0 라이선스는 수정 된 버전을 비공개 소스로 유지할 수 있도록 허용하는 허용 라이선스이지만 앱의 일부가 Apache 2.0 라이선스에 속한다는 사실을 앱 수신자에게 알리고 라이선스 사본을 제공해야합니다.