Aria 2.0.0
C++23 MVVM framework (C++20 minimum) — reactive, coroutine-first, ABI-layered
Loading...
Searching...
No Matches
aria::adapters::jni::JniView Class Reference

Wraps an Android View (jobject) as an IView. More...

#include <JniAdapter.hpp>

Inheritance diagram for aria::adapters::jni::JniView:
[legend]

Public Member Functions

 JniView (JNIEnv *env, jobject view)
 Construct from a JNI jobject (Android View).
 ~JniView () override
 JniView (const JniView &)=delete
JniViewoperator= (const JniView &)=delete
std::string_view kind () const noexcept override
 Reported as "android" — this is the runtime platform name, used by BindingEngine for adapter routing (the adapter is "jni", the platform is "android").
jobject native () const noexcept
 Access the underlying JNI global-ref jobject.
Public Member Functions inherited from aria::binding::IView
 IView ()
 IView (const IView &)=delete
IViewoperator= (const IView &)=delete
 IView (IView &&)=delete
IViewoperator= (IView &&)=delete
virtual ~IView ()
Subscription on_destroy (std::function< void()> cb) const
 Subscribe to "this view is about to be destroyed".

Additional Inherited Members

Protected Member Functions inherited from aria::binding::IView
void fire_destroy_ () noexcept
 Invoked by ~IView() to fan out the notification — this is the last-resort trigger.

Detailed Description

Wraps an Android View (jobject) as an IView.

The jobject is stored as a JNI global reference to prevent GC.

Constructor & Destructor Documentation

◆ JniView() [1/2]

aria::adapters::jni::JniView::JniView ( JNIEnv * env,
jobject view )

Construct from a JNI jobject (Android View).

Creates a global reference to prevent garbage collection.

◆ ~JniView()

aria::adapters::jni::JniView::~JniView ( )
override

◆ JniView() [2/2]

aria::adapters::jni::JniView::JniView ( const JniView & )
delete

Member Function Documentation

◆ operator=()

JniView & aria::adapters::jni::JniView::operator= ( const JniView & )
delete

◆ kind()

std::string_view aria::adapters::jni::JniView::kind ( ) const
inlinenodiscardoverridevirtualnoexcept

Reported as "android" — this is the runtime platform name, used by BindingEngine for adapter routing (the adapter is "jni", the platform is "android").

Implements aria::binding::IView.

◆ native()

jobject aria::adapters::jni::JniView::native ( ) const
inlinenodiscardnoexcept

Access the underlying JNI global-ref jobject.


The documentation for this class was generated from the following file: