diff --git a/mbtk/mbtk_rild_v2/src/ril_data_call.c b/mbtk/mbtk_rild_v2/src/ril_data_call.c
index 05f6db9..d5e1da4 100755
--- a/mbtk/mbtk_rild_v2/src/ril_data_call.c
+++ b/mbtk/mbtk_rild_v2/src/ril_data_call.c
@@ -786,7 +786,7 @@
 {
     char prop_name[20] = {0};
     char prop_data[1024] = {0};
-    int ret = -1;
+    int ret = 0;
     if(apn->auto_save) {
         // auto_boot_call must be 0 for CID 1.
         if(apn->cid == MBTK_RIL_CID_1) {
@@ -874,7 +874,20 @@
         || data_info->as_dns != MBTK_DATA_CALL_ITEM_STATE_NON) {
         mbtk_apn_info_t apn;
         if(apn_prop_get_by_cid(data_info->cid, &apn)) {
-            return -1;
+            if(data_info->cid == MBTK_RIL_CID_1) {
+                memset(&apn, 0, sizeof(mbtk_apn_info_t));
+                if(data_info->auto_boot_call != MBTK_DATA_CALL_ITEM_STATE_NON)
+                    apn.auto_boot_call = (data_info->auto_boot_call == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
+
+                if(data_info->def_route != MBTK_DATA_CALL_ITEM_STATE_NON)
+                    apn.def_route = (data_info->def_route == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
+
+                if(data_info->as_dns != MBTK_DATA_CALL_ITEM_STATE_NON)
+                    apn.as_dns = (data_info->as_dns == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
+                return apn_prop_set(&apn);
+            } else {
+                return -1;
+            }
         } else {
             if(data_info->auto_boot_call != MBTK_DATA_CALL_ITEM_STATE_NON)
                 apn.auto_boot_call = (data_info->auto_boot_call == MBTK_DATA_CALL_ITEM_STATE_ENABLE) ? 1 : 0;
