從網上東拼西湊找了不少教程,但是里面沒有提到rillib.so需要替換,替換掉就可以上網了,系統也有4G圖標了。
注意,這個rillib.so是移遠提供的。把他們提供的文件放到rk3568_android_sdk/vendor/rockchip/common/phone/lib下,主要的是libreference-ril.so和libril.so這兩個文件。
修改rk3568_android_sdk/vendor/rockchip/common/phone/phone.mk
PRODUCT_COPY_FILES += \$(CUR_PATH)/phone/lib/libreference-ril-quel.so:vendor/lib64/libreference-ril-quel.so \$(CUR_PATH)/phone/etc/ppp/ip-down:system/etc/ppp/ip-down \$(CUR_PATH)/phone/etc/ppp/ip-up:system/etc/ppp/ip-up \$(CUR_PATH)/phone/bin/chat:system/bin/chat \$(CUR_PATH)/phone/etc/ql-ril.conf:system/etc/ql-ril.conf \$(CUR_PATH)/etc/spn-conf.xml:system/etc/spn-conf.xml \$(CUR_PATH)/phone/lib/libril.so:vendor/lib64/libril.so
如果修改了so文件的文件名,如我修改成了libreference-ril-quel.so,那么在rild.rc里需要做相應修改,如:
service ril-daemon /vendor/bin/hw/rild -l /vendor/lib64/libreference-ril-quel.so
編譯提示沖突,把rk3568_android_sdk/hardware/ril/libril/Android.mk,修改成Android.mk.disabled,或者別的什么名字,目的就是不編譯系統自帶的libril源碼,使用移遠提供的so文件。
附加其他的主要文件的修改方法。
rk3568_android_sdk/device/rockchip/common/4g_modem/manifest.xml
<manifest version="1.0" type="device"><hal format="hidl"><name>android.hardware.radio</name><transport>hwbinder</transport><fqname>@1.5::IRadio/slot1</fqname><fqname>@1.2::ISap/slot1</fqname></hal>
</manifest>
另外rk3568_android_sdk/device/rockchip/common/device.mk和rk3568_android_sdk/device/rockchip/common/modules/4g_modem.mk里都添加:
PRODUCT_PACKAGES += \android.hardware.radio@1.2-radio-service \android.hardware.radio@1.4-radio-service \android.hardware.radio@1.5-radio-service \android.hardware.radio.config@1.0-service \android.hardware.radio.config@1.1-service \android.hardware.radio.config@1.2-service \android.hardware.radio.config@1.3-service \android.hardware.radio.config@1.0.vendor \android.hardware.radio.config@1.1.vendor \android.hardware.radio.config@1.2.vendor \android.hardware.radio.config@1.3.vendor \android.hardware.radio.deprecated@1.0.vendor \android.hardware.secure_element@1.0.vendor \android.hardware.secure_element@1.1.vendor \android.hardware.secure_element@1.2.vendor \android.hardware.radio@1.2.vendor \android.hardware.radio@1.4.vendor \android.hardware.radio@1.5.vendor \android.hardware.radio@1.6.vendor
單獨添加某一個文件可能會報錯,提示找不到radio@1.5,沒有仔細測試。
前前后后弄了一個星期,太難了。