Tizen: Samsung Watch ve Smart TV için Geliştirmenin Özü

Yazar: IT Sectr Yayınlanma: 2026-02-07 Okuma süresi: 13 dk

Tizen, Samsung ve Linux Foundation tarafından geliştirilen Linux tabanlı açık kaynaklı bir işletim sistemidir. Galaxy Watch akıllı saatlerde, Samsung Smart TV'lerde, ev aletlerinde ve IoT cihazlarında kullanılır. Yerel uygulamalar için C/C++, web uygulamaları için HTML5/JavaScript ile geliştirme yapılır. Tizen SDK, bir emülatör ve Visual Studio Code tabanlı IDE sağlar. Tizen Association'a göre, ekosistem 200 milyondan fazla cihazı kapsamaktadır.

Ana Noktalar

  • Tizen — saatler, TV'ler, ev aletleri ve IoT için Samsung'un Linux çekirdeği üzerinde açık kaynaklı işletim sistemi
  • C/C++ — tam donanım erişimine sahip yüksek performanslı yerel uygulamalar için ana dil
  • HTML5/JS — Tizen Device API ve hızlı prototipleme ile web uygulamaları için yığın
  • Tizen Studio — VS Code tabanlı saat ve TV emülatörü, profil oluşturucu ve hata ayıklayıcı içeren SDK
  • Galaxy Store — moderasyon, imza ve %30/25 komisyon ile Samsung'un uygulama mağazası

Tizen Nedir?

Tizen, Samsung ve Linux Foundation tarafından denetlenen açık kaynaklı bir işletim sistemidir. İlk ticari sürüm Tizen 1.0, 2012'de piyasaya sürüldü. Sistem Linux çekirdeğini temel alır ve farklı cihaz türleri için kendi framework mimarisini kullanır: Tizen Mobile (akıllı telefonlar — proje 2017'de kapatıldı), Tizen Watch (saatler), Tizen TV (televizyonlar) ve Tizen IoT (akıllı ev).

2021'den bu yana Samsung, Tizen'i esas olarak giyilebilir cihazlarda ve televizyonlarda kullanmaktadır. 2021 öncesi tüm Galaxy Watch akıllı saatler Tizen'de çalışıyordu (Galaxy Watch, Watch Active, Watch 3). Galaxy Watch 4'ten itibaren Samsung, One UI Watch ile Wear OS'a geçti, ancak Tizen mevcut cihazlar ve TV'ler için desteklenmeye devam ediyor. Samsung'a (Tizen Ekosistem Raporu, 2025) göre dünya çapında 180 milyondan fazla TV'de Tizen TV yüklüdür.

Tizen'in önemli bir özelliği, iki geliştirme paradigmasını desteklemesidir: maksimum performans için yerel uygulamalar (C/C++) ve hızlı geliştirme için web uygulamaları (HTML5, CSS, JavaScript). Her iki tür de Tizen Device API'ye erişebilir — Bluetooth, NFC, Wi-Fi, sensörler, kamera ve multimedya ile çalışmak için sarmalayıcılar.

Tizen Sürüm Geçmişi

Tizen 2.3 (2014) — Samsung Z akıllı telefonlar için ilk kararlı sürüm. Tizen 3.0 (2017) — geliştirilmiş çoklu görev, Vulkan desteği, 64 bit mimari. Tizen 4.0 (2018) — yeniden tasarlanan framework'ler, NPU'da AI hızlandırma desteği. Tizen 5.5 (2020) — AVPlay 2.0, WebAssembly, geliştirilmiş oluşturma ile Tizen TV. Tizen 6.0 (2022) — cihaz üzerinde ML çıkarım desteği, IoT için Matter Protokolü.

Tizen SürümüYılCihazlarAna Yenilik
2.32014Akıllı telefonlarSamsung Z'de ilk ticari sürüm
3.02017Akıllı telefonlar, saatlerVulkan, 64 bit, Galaxy Watch
4.02018Saatler, TV, IoTAI framework'leri, Tizen TV 2019
5.52020TV, IoTAVPlay 2.0, WebAssembly, geliştirilmiş WebGL
6.02022TV, IoTML çıkarım, Matter Protokolü

Tizen Mimarisi: Linux Çekirdeği ve Framework'ler

Tizen Mimarisi çok katmanlı bir yapı ile modüler prensip üzerine inşa edilmiştir. En alt katman, enerji verimliliği ve gerçek zamanlı görevler (TV ve ses için RT_PREEMPT) için yamalar içeren Linux çekirdeğidir. Çekirdeğin üzerinde, donanım soyutlama katmanı (HAL) bulunur ve kamera, sensör, Bluetooth, Wi-Fi, NFC ve ekran sürücülerine (DirectFB veya Wayland aracılığıyla) birleşik erişim sağlar.

Core Framework Katmanı

Core Framework katmanı şunları içerir: Application Framework (uygulama yaşam döngüsü yönetimi), UI Framework (EFL — UI için Enlightenment Foundation Libraries, DALi — oyunlar ve animasyonlar için 3D motor), Multimedia Framework (GStreamer ve MediaCodec aracılığıyla kamera, ses, video), Network Framework (Bluetooth, Wi-Fi, NFC, HTTP, WebSocket) ve Security Framework (SELinux, Smack, Tizen Ayrıcalık Sistemi).

Service Katmanı

Service katmanı sistem hizmetleri sağlar: Application Manager (başlatma, durdurma, çoklu görev), Package Manager (uygulama yükleme/kaldırma, .tpk ve .wgt biçimleri), Location Manager (GPS, Wi-Fi konumlandırma, Coğrafi Çit), Sensor Manager (ivmeölçer, jiroskop, barometre, kalp atış hızı monitörü), Context Manager (kullanıcı etkinliği tanıma: yürüme, koşma, uyuma).

Web Uygulamaları için Device API

Tizen, web uygulamaları için Device API sağlar — yerel API'lerle aynı işlevlere erişim sağlayan JavaScript arayüzleri. API'ler modüllere ayrılmıştır: Application API, Bluetooth API, Calendar API, Call History API, Contact API, Content API, Data Control API, Download API, Gallery API, Media Controller API, Message API, NFC API, Notification API, Power API, Push API, System Info API, Time API, Web Setting API.

C/C++ ile Tizen Yerel Uygulamaları

Tizen yerel uygulamaları, .tpk biçiminde (Tizen Package Kit) yürütülebilir bir dosyaya derlenir. Ana dil, GCC veya Clang derleyicisi ile C++11/14'tür. Geliştirme, Tizen Studio veya Tizen uzantılı Visual Studio Code'da yapılır. Yerel uygulamalar, EFL, DALi, GStreamer ve tüm sistem API'lerine aracısız doğrudan erişime sahiptir ve maksimum performans sağlar.

Yerel Uygulama Yapısı

Yerel uygulama bir tizen-manifest.xml dosyası (AndroidManifest.xml'e benzer), bir veya daha fazla paylaşımlı kitaplık (.so) ve kaynaklar (resimler, yazı tipleri, yerelleştirmeler) içerir. Yaşam döngüsü app_event_cb aracılığıyla yönetilir: APP_EVENT_CREATE, APP_EVENT_RESUME, APP_EVENT_PAUSE, APP_EVENT_DESTROY. UI, pencere uygulamaları için EFL (Edje + Elementary) veya 3D grafikler için DALi aracılığıyla oluşturulur.

cpp
// EFL UI ile C++'ta Tizen yerel uygulaması
#include <app.h>
#include <efl_extension.h>
#include <dlog.h>

typedef struct appdata {
    Evas_Object *win;
    Evas_Object *conform;
    Evas_Object *label;
} appdata_s;

static void
win_delete_cb(void *data, Evas_Object *obj, void *event_info) {
    ui_app_exit();
}

static void
create_base_gui(appdata_s *ad) {
    // Tizen penceresi oluşturma
    ad->win = efl_add(EFL_UI_WIN_CLASS, nullptr,
                      efl_ui_win_typename_set(efl_add(EFL_UI_WIN_CLASS, nullptr), "tizen-hello"));

    // Pencere başlığı
    efl_text_set(ad->win, "Hello Tizen");
    efl_event_callback_add(ad->win, EFL_UI_WIN_EVENT_DELETE_REQUEST, win_delete_cb, ad);

    // Conformant — giyilebilir cihazlar için standart Tizen kapsayıcısı
    ad->conform = efl_add(EFL_UI_CONFORMANT_CLASS, ad->win);
    efl_content_set(ad->win, ad->conform);
    efl_gfx_size_hint_weight_set(ad->conform, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);

    // Metin etiketi
    ad->label = efl_add(EFL_UI_LABEL_CLASS, ad->conform);
    efl_text_set(ad->label, "Tizen'e Hoş Geldiniz!");
    efl_content_set(ad->conform, ad->label);

    // Pencereyi görüntüleme
    efl_gfx_size_hint_weight_set(ad->label, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    efl_gfx_size_hint_align_set(ad->label, EVAS_HINT_FILL, EVAS_HINT_FILL);
}

static void
app_get_resource_cb(void *data) {
    // Uygulama kaynağı edinme işleyicisi
    appdata_s *ad = (appdata_s *)data;
    create_base_gui(ad);
}

static bool
app_create_cb(void *data) {
    // Uygulama oluşturulduğunda çağrılır
    appdata_s *ad = (appdata_s *)data;
    create_base_gui(ad);
    return true;
}

int
main(int argc, char *argv[]) {
    appdata_s ad = {0,};
    ui_app_lifecycle_callback_s event_callback = {0,};

    event_callback.create = app_create_cb;
    return ui_app_main(argc, argv, &event_callback, &ad);
}

Yerel Tizen Hello World uygulaması, UI için EFL (Enlightenment Foundation Libraries) kullanır. ui_app_main, yaşam döngüsü geri çağrılarını kabul eden Tizen giriş noktasıdır. efl_add, Win → Conformant → Label hiyerarşisi aracılığıyla UI nesneleri oluşturur. EFL UI, Edje kompozit modeline dayanır — tema açıklamaları .edc dosyalarına yazılır ve .edj'ye derlenir.

Tizen Manifestosu (tizen-manifest.xml)

tizen-manifest.xml dosyası, yerel uygulamanın yapılandırmasıdır. id (ters alan adı biçiminde benzersiz tanımlayıcı), package (paket adı), version, label (görünen ad), author ve description belirtir. Ayrıcalıklar API erişimini bildirir: http://tizen.org/privilege/bluetooth, http://tizen.org/privilege/location, http://tizen.org/privilege/camera. Bir ayrıcalık belirtilmeden ilgili API'nin çağrılması SECURITY_ERR hatasıyla sonuçlanır.

HTML5 ve JavaScript ile Tizen Web Uygulamaları

Tizen web uygulamaları, .wgt biçiminde (W3C Widget) paketlenmiş HTML5 uygulamalarıdır. Geliştirme, normal bir web sitesi oluşturmakla aynıdır ancak global tizen nesnesi aracılığıyla Tizen Device API'ye ek erişim sağlar. Web uygulamaları, WebKit motoruna (Tizen 2.x-4.x) veya Chromium'a (Tizen 5.5+) dayalı kendi Web Runtime (WRT) sürecinde çalışır.

Web Uygulaması Yapısı

Bir web uygulaması index.html (giriş noktası), config.xml (W3C Widget Yapılandırması), CSS, JavaScript ve resimler içerir. config.xml dosyası, KaiOS'teki manifest.webapp'a benzer: zorunlu alanlar widget (id, version, saatler için height/width), name, description ve author'i içerir. Device API için izinler tizen:privilege öğesi aracılığıyla belirtilir. CSP (İçerik Güvenlik Politikası) bölümü, komut dosyası kaynaklarını kısıtlar.

javascript
// Tizen Watch web uygulaması için config.xml
<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns="http://www.w3.org/ns/widgets"
        xmlns:tizen="http://tizen.org/ns/widgets"
        id="com.example.heartrate"
        version="1.0.0"
        height="360" width="360">
    <tizen:application id="com.example.heartrate"
                       package="com.example.heartrate"
                       required_version="4.0"/>
    <name>Nabız ölçer</name>
    <description>Galaxy Watch'ta nabız ölçümü</description>
    <author>Developer</author>
    <tizen:privilege name="http://tizen.org/privilege/healthinfo"/>
    <tizen:privilege name="http://tizen.org/privilege/sensor"/>
    <tizen:profile name="wearable"/>
    <tizen:content-security-policy>
        default-src 'self'; script-src 'self'; style-src 'self'
    </tizen:content-security-policy>
</widget>

Minimum config.xml parçacığı, temel öğeleri gösterir: id ve sürüm ile widget, yuvarlak saat ekranları için wearable profili ile tizen:application, healthinfo ve sensor API için tizen:privilege ve içerik yüklemeyi yalnızca uygulama paketiyle sınırlayan bir İçerik Güvenlik Politikası.

javascript
// Tizen Watch web uygulaması: kalp atış hızı izleme
const HeartRateMonitor = {
    hrSensor: null,
    isMonitoring: false,

    async init() {
        try {
            // HRM sensör desteğini kontrol etme
            const sensors = tizen.sensorservice.getAvailableSensors();
            if (!sensors.includes('HRM')) {
                throw new Error('HRM sensörü bulunamadı');
            }

            // Kalp atış hızı sensörüne erişim sağlama
            this.hrSensor = tizen.sensorservice.getDefaultSensor('HRM');
            console.log('HRM sensörü başlatıldı');
        } catch (err) {
            console.error('Başlatma hatası:', err.message);
        }
    },

    startMonitoring() {
        if (!this.hrSensor) return;

        this.isMonitoring = true;
        this.hrSensor.startSensor({
            interval: 1000,  // her saniye ölçüm
            callback: {
                onsuccess: (data) => {
                    const heartRate = data.heartRate;
                    document.getElementById('hr-value').textContent = heartRate;
                    this.updateDisplay(heartRate);
                },
                onerror: (err) => {
                    console.error('Sensör hatası:', err.message);
                }
            }
        });
    },

    stopMonitoring() {
        if (this.hrSensor && this.isMonitoring) {
            this.hrSensor.stopSensor();
            this.isMonitoring = false;
        }
    },

    updateDisplay(heartRate) {
        // 360x360 yuvarlak ekranda kalp atış hızı görselleştirme
        const canvas = document.getElementById('hr-canvas');
        const ctx = canvas.getContext('2d');
        ctx.clearRect(0, 0, 360, 360);

        // Dairesel kalp atış hızı göstergesi
        ctx.beginPath();
        ctx.arc(180, 180, 120, 0, 2 * Math.PI);
        ctx.strokeStyle = '#ff4444';
        ctx.lineWidth = 8;
        ctx.stroke();
    }
};

document.addEventListener('DOMContentLoaded', () => {
    HeartRateMonitor.init().then(() => {
        HeartRateMonitor.startMonitoring();
    });
});

HeartRateMonitor uygulaması, Galaxy Watch HRM sensörüne erişmek için Tizen Sensor API'yi kullanır. tizen.sensorservice.getDefaultSensor('HRM') kalp atış hızı sensörünü alır, startSensor 1 saniye aralıklarla ölçümlere başlar. 360×360 tuval, dairesel bir gösterge çizer — yuvarlak Tizen saat ekranları için tipik bir UI paradigması.

Tizen Watch Geliştirme: Circle UI ve Rotary

Tizen Watch benzersiz UI özelliklerine sahiptir: yuvarlak ekran (Galaxy Watch'ta 360×360 piksel), gezinme için fiziksel çerçeve (rotary bezel) ve üç donanım düğmesi: Home, Back ve Custom. Geliştirici, arayüzü yuvarlak alana uyarlamalıdır — köşe öğeleri kesilebilir. Circle UI, yuvarlak ekranlar için hazır bileşenler içeren bir Samsung kitaplığıdır.

Rotary Bezel

Rotary Bezel — Galaxy Watch ekranı etrafında listelerde gezinme, ses seviyesi ayarlama ve yakınlaştırma için dönen fiziksel bir halkadır. Tizen'de döndürme olayı rotarydetector veya EFL edge sinyali aracılığıyla işlenir. Her çerçeve çentiği, bir dönüş açısı (0-360 derece) ile bir olay oluşturur. Web uygulamaları, çerçeveyi rotarydetector API (tizen.rotarydetector) aracılığıyla işler.

javascript
// Tizen Watch'ta Rotary Bezel işleme
class RotaryNavigation {
    constructor() {
        this.currentAngle = 0;
        this.sections = document.querySelectorAll('.rotary-section');
        this.currentSection = 0;
        this.init();
    }

    init() {
        // Çerçeve döndürme olaylarına abone olma
        const detector = tizen.rotarydetector;

        detector.addEventListener('rotarydetector', (event) => {
            // event.angle — geçerli açı (0-360)
            // event.direction — 'cw' (saat yönünde) veya 'ccw' (saat yönünün tersine)
            this.handleRotation(event);
        });

        // rotarydetector'ı etkinleştirme
        detector.start();
    }

    handleRotation(event) {
        const delta = event.delta;  // açı değişikliği
        this.currentAngle += delta;

        // Yön ve hareket belirleme
        if (delta > 0) {
            // Saat yönünde döndürme — sonraki öğe
            this.currentSection = Math.min(this.currentSection + 1, this.sections.length - 1);
        } else {
            // Saat yönünün tersine döndürme — önceki öğe
            this.currentSection = Math.max(this.currentSection - 1, 0);
        }

        this.updateUI();
    }

    updateUI() {
        this.sections.forEach((el, i) => {
            el.classList.toggle('active', i === this.currentSection);
            el.scrollIntoView({ block: 'nearest', behavior: 'smooth' });
        });
    }

    destroy() {
        tizen.rotarydetector.removeEventListener('rotarydetector');
        tizen.rotarydetector.stop();
    }
}

// Uygulama yüklenirken başlatma
document.addEventListener('tizen-rotary-ready', () => {
    const nav = new RotaryNavigation();
});

RotaryNavigation sınıfı, tizen.rotarydetector.addEventListener aracılığıyla rotarydetector olaylarına abone olur. Çerçeve döndürüldüğünde yön (cw/ccw) ve açı deltası hesaplanır. Geçerli bölüm active sınıfıyla vurgulanır. rotarydetector.start() zorunludur — onsuz olaylar oluşturulmaz. destroy() aboneliği iptal eder ve bellek sızıntılarını önlemek için dedektörü durdurur.

Saatler için UI Özellikleri

Tizen Watch arayüzü şu bileşenleri kullanır: RotarySelector(çerçeve kontrollü dairesel liste), CircularList(dairesel kaydırmalı liste), RadialMenu(bir daire içinde düzenlenmiş simgelerle radyal menü), EdgePanel(ekran kenarından kayan panel) ve CircleProgressBar(dairesel ilerleme göstergesi). Tüm bileşenler 360×360 çözünürlük için optimize edilmiştir ve ekran köşelerinin olmadığını hesaba katar. Minimum dokunma hedefi boyutu 48 pikseldir.

Tizen TV Geliştirme: Smart TV için Uygulamalar

Tizen TV — kendi SDK'sı ve emülatörü ile Samsung Smart TV için bir platformdur. TV uygulamaları iki türe ayrılır: web uygulamaları (HTML5/JS) ve yerel uygulamalar (C/C++). TV için web uygulamaları daha hızlı ve kolay geliştirilir, ancak yerel uygulamalar video ve oyunlar için daha iyi performans sunar. Tizen TV, gezinme için D-pad'li bir uzaktan kumanda kullanır.

Video için AVPlay API

AVPlay API — video oynatma için Tizen TV'nin ana API'sidir. H.264, H.265 (HEVC), VP9, AV1 biçimlerini destekler. 2024+ TV'lerde 8K'ya kadar çözünürlük. AVPlay API, donanımsal kod çözme, HDR10+, Dolby Atmos, altyazılar ve birden çok ses parçası sağlar. play(), pause(), stop(), seekTo(position), setDisplayRect() ile kontrol. Akış yerel bir dosya veya HLS/DASH URL'si olabilir.

javascript
// AVPlay API ile Tizen TV için video oynatıcı
class TizenVideoPlayer {
    constructor(videoElementId) {
        this.videoElement = document.getElementById(videoElementId);
        this.avplay = null;
        this.isReady = false;
    }

    async init(url) {
        try {
            // AVPlay kullanılabilirliğini kontrol etme
            if (typeof webapis === 'undefined' ||
                !webapis.avplay) {
                throw new Error('AVPlay API kullanılamıyor');
            }

            this.avplay = webapis.avplay;
            this.avplay.open(url);

            // TV'de tam ekran görüntü ayarlama
            this.avplay.setDisplayRect(0, 0, 3840, 2160);
            this.avplay.setDisplayMethod(webapis.avplay.AVPLAY_DISPLAY_METHOD_PLAYER);

            // Ses yapılandırması (Dolby Atmos, destekleniyorsa)
            this.avplay.setStreamingProperty('ADAPTIVE_INFO', JSON.stringify({
                width: 3840,
                height: 2160,
                bitrate: 25000000
            }));

            this.avplay.prepareAsync(
                () => {
                    this.isReady = true;
                    console.log('Video oynatmaya hazır');
                },
                (error) => {
                    console.error('Hazırlık hatası:', error);
                }
            );
        } catch (err) {
            console.error('Başlatma hatası:', err);
        }
    }

    play() {
        if (this.isReady) this.avplay.play();
    }

    pause() {
        this.avplay.pause();
    }

    seekTo(positionMs) {
        this.avplay.seekTo(positionMs);
    }

    setSubtitle(url, encoding) {
        this.avplay.setStreamingProperty('SUBTITLE', JSON.stringify({
            url: url,
            encoding: encoding || 'UTF-8'
        }));
    }
}

// Kullanım
const player = new TizenVideoPlayer('video-area');
player.init('https://example.com/stream.m3u8');
player.setSubtitle('https://example.com/subs.vtt', 'UTF-8');

TizenVideoPlayer sınıfı, AVPlay API ile çalışmayı gösterir. webapis.avplay.open() bir medya akışı (yerel veya HLS/DASH) açar. setDisplayRect işleme alanını ayarlar — TV'de genellikle 3840×2160'ta tam ekrandır. prepareAsync, geri çağırmalarla eşzamansız hazırlıktır. AVPlay, ADAPTIVE_INFO aracılığıyla uyarlanabilir bit hızını ve SUBTITLE özelliği aracılığıyla altyazıları destekler.

Galaxy Store ve Uygulama Yayınlama

Samsung Galaxy Store — Tizen (saatler, TV'ler, IoT) için resmi uygulama mağazasıdır. Geliştirici kaydı Samsung Developers programı aracılığıyla ücretsizdir. Geliştiriciler, Samsung sertifikasıyla imzalanmış .tpk (yerel) veya .wgt (web) biçiminde uygulamalar yükler. Denetleme 2-5 iş günü sürer. Galaxy Store 190 ülkede kullanılabilir.

Uygulama İmzalama

Tizen, uygulamalar için Samsung sertifikasıyla dijital imza gerektirir. Süreç: Samsung Certificate Manager aracılığıyla Yazar Sertifikası oluşturun, mağaza için Dağıtıcı Sertifikası oluşturun, Tizen Studio (Build Signed Package) aracılığıyla paketi imzalayın. Sertifika, geliştirici hesabına bağlanır. İmza olmadan uygulama yalnızca Geliştirici Modu etkinleştirilmiş geliştirme cihazlarına kurulabilir.

Paraya Çevirme Modeli

Galaxy Store, ücretli uygulamaları (ilk 10.000$'da %30 komisyon, sonra %25), abonelikleri (%25), Samsung Ads aracılığıyla reklamcılığı ve Samsung IAP aracılığıyla uygulama içi satın alımları destekler. TV uygulamaları için Smart TV Premium Channels modeli mevcuttur. Minimum fiyat 0,99$'dır. 100$ eşiğine ulaşıldığında aylık ödemeler yapılır.

GereksinimYerel (.tpk)Web (.wgt)
DilC/C++HTML5, CSS, JS
UI FrameworkEFL, DALi, Tizen Circle UICircle UI (JS)
API ErişimiTam sistemDevice API
PerformansMaksimumDaha düşük (Web Runtime)
Paket Boyutu100 MB'a kadar10 MB'a kadar
Başlangıç ŞablonuTizen Native AppTizen Web App

Sıkça Sorulan Sorular

Tizen geliştirme için hangi diller kullanılır?

Yerel uygulamalar, UI için EFL veya DALi kullanılarak C/C++ ile yazılır. Web uygulamaları, Tizen Device API ile HTML5, CSS ve JavaScript kullanır. Tizen TV için Tizen .NET aracılığıyla .NET (C#) ile geliştirme mevcuttur. Samsung, yüksek performanslı uygulamalar için C++ ve basit arayüzler için JavaScript önerir.

Tizen, Wear OS'tan nasıl farklıdır?

Tizen, Samsung donanımı için optimize edilmiş kendi C/C++ framework'ünü kullanır. Wear OS, Kotlin/Java ile Android tabanlıdır. Tizen aynı donanımda %30 daha az güç tüketir ancak mağazada daha az uygulama bulunur. 2021'den bu yana Samsung yeni saatlerde Wear OS'a geçti ancak Tizen desteklenmeye devam ediyor.

Tizen TV için web uygulaması nasıl oluşturulur?

Tizen TV için web uygulaması, Tizen Device API ile HTML5/JavaScript'te oluşturulur. Geliştirme, TV emülatörü ile Tizen Studio'da yapılır. Uygulama .wgt paketine paketlenir. Ana API'ler: AVPlay (video), TVInfoDevice (TV özellikleri), TVInputDevice (uzaktan kumanda), WebAudio (ses). Uzaktan kumandanın D-pad'i ile gezinme.

Tizen'de Rotary Bezel nedir?

Rotary Bezel — gezinme için Galaxy Watch ekranı etrafında fiziksel dönen bir halkadır. Olaylar tizen.rotarydetector API aracılığıyla işlenir. Her çentik, bir dönüş açısı ve yön (cw/ccw) ile bir olay oluşturur. Rotary Bezel, listelerde kaydırma, ses seviyesi ayarlama, yakınlaştırma ve menü gezinme için kullanılır.

Tizen uygulamaları nasıl yayınlanır?

Samsung Galaxy Store aracılığıyla yayınlama. Geliştirici kaydı ücretsizdir. Uygulama (.tpk veya .wgt biçimi) Samsung sertifikasıyla imzalanır. Denetleme 2-5 gün. İlk 10.000$ gelirde %30 komisyon, sonra %25. Minimum fiyat 0,99$. 100$'dan aylık ödemeler.

Özet

  • Tizen — saatler, TV'ler, IoT ve ev aletleri için Samsung'un Linux çekirdeği üzerinde açık kaynaklı işletim sistemi, yerel ve web uygulamalarını destekler
  • Yerel uygulamalar (C/C++, EFL/DALi, .tpk biçimi) maksimum performans ve tam donanım erişimi sağlar
  • Web uygulamaları (HTML5/JS, .wgt biçimi, Chromium tabanlı Web Runtime) — Device API ile hızlı geliştirme
  • Tizen Watch 360×360 yuvarlak ekran, Rotary Bezel, Circle UI ve RotarySelector/CircularList bileşenlerini kullanır
  • Tizen TV, 8K'ya kadar H.264/H.265/VP9 donanımsal kod çözme, HDR10+, Dolby Atmos için AVPlay API'sini kullanır
  • Galaxy Store — ücretsiz kayıt, .tpk/.wgt biçimi, Samsung sertifikası imzası, 2-5 gün denetleme
  • Tizen Studio — saat ve TV emülatörü, profil oluşturucu ve hata ayıklayıcı ile VS Code tabanlı SDK

Anahtar teslim bir mobil uygulama geliştireceğiz

IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.

Projeyi tartış

Ayrıca okuyun