//
// Copyright (C) 2015 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//

package {
    default_applicable_licenses: ["packages_apps_TV_license"],
}

// See: http://go/android-license-faq
license {
    name: "packages_apps_TV_license",
    package_name: "Android Live TV App",
    visibility: [":__subpackages__"],
    license_kinds: [
        "SPDX-license-identifier-Apache-2.0",
        "SPDX-license-identifier-BSD",
        "SPDX-license-identifier-MIT",
    ],
    license_text: ["res/raw/third_party_licenses"],
}

version_name = "1.24-asop"
version_code = "417000452"

android_app {
    name: "LiveTv",

    srcs: ["src/**/*.java"],

    // TODO(b/122608868) turn proguard back on
    optimize: {
        enabled: false,
    },

    // It is required for com.android.providers.tv.permission.ALL_EPG_DATA
    privileged: true,
    product_specific: true,

    sdk_version: "system_current",
    min_sdk_version: "23", // M

    resource_dirs: [
        "res",
        "material_res",

    ],

    required: ["com.android.tv.xml"],

    libs: ["tv-guava-android-jar"],

    static_libs: [
        "android-support-annotations",
        "android-support-compat",
        "android-support-v7-recyclerview",
        "androidx.legacy_legacy-support-core-ui",
        "androidx.leanback_leanback",
        "androidx.leanback_leanback-preference",
        "androidx.palette_palette",
        "androidx.preference_preference",
        "androidx.tvprovider_tvprovider",
        "jsr330",
        "live-channels-partner-support",
        "live-tv-tuner-proto",
        "live-tv-tuner",
        "tv-auto-value-jar",
        "tv-auto-factory-jar",
        "tv-common",
        "tv-error-prone-annotations-jar",
        "tv-ratings-resources",
        "tv-javax-annotations-jar",
        "tv-lib-dagger",
        "tv-lib-exoplayer",
        "tv-lib-exoplayer-v2-core",
        "tv-lib-dagger-android",
    ],

    plugins: [
        "tv-auto-value",
        "tv-auto-factory",
        "tv-lib-dagger-android-processor",
        "tv-lib-dagger-compiler",
    ],

    javacflags: [
        "-Xlint:deprecation",
        "-Xlint:unchecked",
    ],

    aaptflags: [
        "--version-name",
        version_name,

        "--version-code",
        version_code,

        "--extra-packages",
        "com.android.tv.tuner",

        "--extra-packages",
        "com.android.tv.common",
    ],
}

prebuilt_etc {
    name: "com.android.tv.xml",
    sub_dir: "permissions",
    src: "com.android.tv.xml",
    product_specific: true,
}
