Tizen .NETのプラットフォーム固有APIの制限事項
Xamarin.Tizenチョットデキルのなかしょです。
以前も紹介しましたが、Tizen .NET Architectureは以下のようになっています。
これだけ見ると、「Platform specific API」使えば、Xamarin.Forms使わずにTizen用アプリ作れるんじゃね、という印象があります。
でも、Tizen.NETでは「The C# APIs provide support for 60% of Tizen Mobile APIs.」と説明があり、Nativeで使用できる60%しか.NETのAPIを用意していないようです。では、対応しているものは何かというと以下が列挙されています。
- Tizen.Applications
- Provides the Tizen application framework, including, for example, application state change events, inter-application messaging, and notification services.
- Tizen.Content
- Provides content management services, such as file and media downloads, storing and indexing audio and video content, and associating content types with helper applications.
- Tizen.Location
- Manages geographical location services and geofencing.
- Tizen.Multimedia
- Interacts with media services, including audio playback, recording, and device policy.
- Tizen.Network
- Provides APIs to control connectivity devices, as well as providing various network information.
- Tizen.Security
- Provides access to secure storage for passwords, keys, certificates, and other sensitive data.
- Tizen.System
- Provides device-specific services, including status, system information and settings, feedback, and sensor control and access.
以上です。Nativeには他にどのようなAPIがあるというと前述のアーキテクチャ図から以下だと見て取れます。
- Base
- Messaging
- Social
- Telephony
- UI
- Web
なんということでしょう。
UIがTizen.NETにはないです。
ということはXamarin.FormsでTizenの画面が乱れたときに、Custom Rendrerなどで解決したくてもできません。
Xamarin.Forms標準のUIでできることしかUIが表現できないようです。
闇が深そうだと分かったところで今日はここまで。