From e3770b5bdec490ee559e632ff84ade01123460cc Mon Sep 17 00:00:00 2001 From: junchao yuan Date: Wed, 17 Jul 2019 08:53:22 +0000 Subject: device: java called native interface by jni [1/4] PD#called by jni Problem: GTS Fail; Solution: java called native interface by jni Verify: verified by frinkin Change-Id: I962c6836d4e976455def6fb5ad1b63c5e88ef64f Signed-off-by: junchao.yuan --- diff --git a/core_amlogic.mk b/core_amlogic.mk index 0772f51..23cc484 100755..100644 --- a/core_amlogic.mk +++ b/core_amlogic.mk @@ -194,8 +194,15 @@ PRODUCT_PACKAGES += \ systemcontrol \ systemcontrol_static \ libsystemcontrolservice \ + libsystemcontrol_jni \ vendor.amlogic.hardware.systemcontrol@1.0_vendor +#add tv library +PRODUCT_PACKAGES += \ + droidlogic-tv \ + droidlogic.tv.software.core.xml \ + libtv_jni + PRODUCT_PACKAGES += \ VideoPlayer \ SubTitle \ @@ -503,3 +510,7 @@ PRODUCT_PROPERTY_OVERRIDES += \ #add copy alarm file to product PRODUCT_COPY_FILES += \ frameworks/base/data/sounds/Alarm_Beep_01.ogg:product/media/audio/alarms/Alarm_Beep_01.ogg + +#public library txt +PRODUCT_COPY_FILES += \ + $(LOCAL_PATH)/public.libraries.txt:$(TARGET_COPY_OUT_VENDOR)/etc/public.libraries.txt diff --git a/public.libraries.txt b/public.libraries.txt new file mode 100644 index 0000000..63fe625 --- a/dev/null +++ b/public.libraries.txt @@ -0,0 +1,3 @@ +libsystemcontrol_jni.so +libtv_jni.so +libscreencontrol_jni.so diff --git a/sepolicy/aml_core/aml_core_service.te b/sepolicy/aml_core/aml_core_service.te index 58cb70f..f5029e5 100644 --- a/sepolicy/aml_core/aml_core_service.te +++ b/sepolicy/aml_core/aml_core_service.te @@ -30,7 +30,7 @@ allow aml_core_app trust_service:service_manager find; allow aml_core_app user_service:service_manager find; -allow aml_core_app system_control:binder call; +allow aml_core_app system_control:binder { call transfer }; binder_call(aml_core_app, droidvold) binder_call(aml_core_app, tvserver) diff --git a/sepolicy/file_contexts b/sepolicy/file_contexts index 08bacec..4703d06 100755..100644 --- a/sepolicy/file_contexts +++ b/sepolicy/file_contexts @@ -303,6 +303,7 @@ /vendor/lib(64)?/libvendorfont\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libtvbinder\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libtv_jni\.so u:object_r:vendor_app_file:s0 +/vendor/lib(64)?/libsystemcontrol_jni\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libamadec_omx_api\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/liboptimization\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libsystemcontrolservice\.so u:object_r:vendor_app_file:s0 @@ -314,12 +315,16 @@ /vendor/lib(64)?/vendor\.amlogic\.hardware\.remotecontrol@1\.0\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/vendor\.amlogic\.hardware\.hdmicec@1\.0\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/vendor\.amlogic\.hardware\.droidvold@1\.0\.so u:object_r:vendor_app_file:s0 +/vendor/lib(64)?/vendor\.amlogic\.hardware\.systemcontrol@1\.1\.so u:object_r:vendor_app_file:s0 +/vendor/lib(64)?/vendor\.amlogic\.hardware\.systemcontrol@1\.0\.so u:object_r:vendor_app_file:s0 +/vendor/lib(64)?/vendor\.amlogic\.hardware\.tvserver@1\.0\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libjnidtvepgscanner\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libjniuevent\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libsubjni\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libtvsubtitle_tv\.so u:object_r:vendor_app_file:s0 /vendor/lib(64)?/libjnifont_tv\.so u:object_r:vendor_app_file:s0 +/vendor/lib(64)?/libsystemcontrolclient\.so u:object_r:vendor_app_file:s0 /dev/hidraw[0-9]* u:object_r:hidraw_audio_device:s0 #The final space is necessary. Please don't delete it. diff --git a/sepolicy/hal_graphics_composer_default.te b/sepolicy/hal_graphics_composer_default.te index 8416eff..11d17f2 100755..100644 --- a/sepolicy/hal_graphics_composer_default.te +++ b/sepolicy/hal_graphics_composer_default.te @@ -5,7 +5,7 @@ allow hal_graphics_composer_default hal_graphics_composer_default:netlink_kobjec allow hal_graphics_composer_default vndservicemanager:binder { call transfer }; allow hal_graphics_composer_default systemcontrol_hwservice:hwservice_manager { find }; -allow hal_graphics_composer_default system_control:binder { call }; +allow hal_graphics_composer_default system_control:binder { call transfer }; allow hal_graphics_composer_default video_device:chr_file rw_file_perms; allow hal_graphics_composer_default graphics_device:chr_file {open read write ioctl}; diff --git a/sepolicy/platform_app.te b/sepolicy/platform_app.te index 8e1907e..80eee46 100644 --- a/sepolicy/platform_app.te +++ b/sepolicy/platform_app.te @@ -4,7 +4,7 @@ get_prop(system_app, media_prop) #allow platform_app vendor_file:file { getattr read open execute }; allow platform_app systemcontrol_hwservice:hwservice_manager { find }; -allow platform_app system_control:binder { call }; +allow platform_app system_control:binder { call transfer }; allow platform_app droidmount_service:service_manager { find }; allow platform_app subtitle_service:service_manager { find }; allow platform_app iso9660:dir { search open read getattr }; diff --git a/sepolicy/priv_app.te b/sepolicy/priv_app.te index 9c6852d..9d85b32 100644 --- a/sepolicy/priv_app.te +++ b/sepolicy/priv_app.te @@ -20,7 +20,7 @@ allow priv_app proc_uptime:file read; allow priv_app tvserver_hwservice:hwservice_manager { find }; allow priv_app systemcontrol_hwservice:hwservice_manager { find }; -allow priv_app system_control:binder call; +allow priv_app system_control:binder { call transfer }; allow priv_app tvserver:binder { call transfer }; allow priv_app param_tv_file:file { create open read write setattr getattr lock unlink }; allow priv_app param_tv_file:dir { search read open write add_name remove_name getattr }; diff --git a/sepolicy/system_control.te b/sepolicy/system_control.te index 7bd11f6..3500455 100644 --- a/sepolicy/system_control.te +++ b/sepolicy/system_control.te @@ -147,3 +147,9 @@ allow system_control sysfs_leds:dir search; allow system_control hal_keymaster_hwservice:hwservice_manager { find }; allow system_control hal_keymaster_default:binder { call }; +allow system_control priv_app:binder { call }; +allow system_control hdmicecd:binder { call transfer }; +allow system_control aml_core_app:binder { call transfer }; +allow system_control hal_graphics_composer_default:binder { call transfer }; +allow system_control platform_app:binder { call transfer }; +allow system_control untrusted_app:binder { call transfer }; \ No newline at end of file diff --git a/sepolicy/untrusted_app.te b/sepolicy/untrusted_app.te index 9653e15..0bfedb2 100755..100644 --- a/sepolicy/untrusted_app.te +++ b/sepolicy/untrusted_app.te @@ -1,4 +1,4 @@ -allow untrusted_app system_control:binder { call }; +allow untrusted_app system_control:binder { call transfer }; allow untrusted_app fuseblk:dir { search }; allow untrusted_app fuseblk:file { read open getattr }; -- cgit