优化demo代码和api接口

Change-Id: I094570a31d63204aaa5da809751e27acd60f60d8
diff --git a/mbtk/test/liblynq_lib/lynq_nw_test.c b/mbtk/test/liblynq_lib/lynq_nw_test.c
index 82cd6d8..32ffc94 100755
--- a/mbtk/test/liblynq_lib/lynq_nw_test.c
+++ b/mbtk/test/liblynq_lib/lynq_nw_test.c
@@ -47,26 +47,31 @@
     char operator[10];
     int opt;
     int lv_voll = 0;
+    int ret;
     nw_client_handle_type handle = -1;
     mbtk_log_init("radio", "NW_TEST");
 
+    printf("=========network main=========\n"
+        "\t0 exit\n"
+        "\t1 network init\n"
+        "\t2 network add rx msg handle\n"
+        "\t3 network band set config\n"
+        "\t4 network get operator name\n"
+        "\t5 network get reg status\n"
+        "\t6 network get signal strength\n"
+        "\t7 network set oos config\n"
+        "\t8 network get oos config\n"
+        "\t9 network set rf config\n"
+        "\t10 network get rf config\n"
+        "\t11 network set ims config\n"
+        "\t12 network get ims config\n"
+        "\t13 network deinit\n"
+        "operator: >> ");
+
     while(1)
     {
-        printf("=========network main=========\n"
-            "\t0 exit\n"
-            "\t1 network init\n"
-            "\t2 network add rx msg handle\n"
-            "\t3 network band set config\n"
-            "\t4 network get operator name\n"
-            "\t5 network get reg status\n"
-            "\t6 network get signal strength\n"
-            "\t7 network set oos config\n"
-            "\t8 network get oos config\n"
-            "\t9 network set rf config\n"
-            "\t10 network get rf config\n"
-            "\t11 network deinit\n"
-            "operator: >> ");
 
+        opt = -1;
         fgets(operator, sizeof(operator), stdin);
         fflush(stdin);
         opt = atoi(operator);
@@ -76,10 +81,12 @@
             printf("main exit\n");
             return 0;
         case 1:
-            qser_nw_client_init(&handle);
+            ret = qser_nw_client_init(&handle);
+            printf("qser_nw_client_init ret = %d\n", ret);
             break;
         case 2:
-            qser_nw_add_rx_msg_handler(handle, nw_event_ind_handler, NULL);
+            ret = qser_nw_add_rx_msg_handler(handle, nw_event_ind_handler, NULL);
+            printf("qser_nw_add_rx_msg_handler ret = %d\n", ret);
             break;
         case 3:
             {
@@ -121,7 +128,8 @@
                         t_info.preferred_nw_mode = QSER_NW_MODE_LTE;//4G
                         break;
                 }
-                qser_nw_set_config(handle, &t_info);
+                ret = qser_nw_set_config(handle, &t_info);
+                printf("qser_nw_set_config ret = %d\n", ret);
             }
             break;
         case 4:
@@ -220,7 +228,8 @@
                 }
                 printf("set OOS %d %d %d \n",pt_info_s.u.full_band_scan_info.t_min, pt_info_s.u.full_band_scan_info.t_step, pt_info_s.u.full_band_scan_info.t_max);
                 //pt_info_s.type = QSER_NW_OOS_CFG_TYPE_FAST_SCAN;平台本身有历史频点优先处理的逻辑(无接口不需要我们进行处理)
-                qser_nw_set_oos_config(handle, &pt_info_s);
+                ret = qser_nw_set_oos_config(handle, &pt_info_s);
+                printf("qser_nw_set_oos_config ret = %d\n", ret);
             }
             break;
         case 8:
@@ -241,7 +250,8 @@
                 fflush(stdin);
                 opt = atoi(operator);
                 printf("rf_mode: [%d]\n",opt);
-                qser_nw_set_rf_mode(handle, opt);
+                ret = qser_nw_set_rf_mode(handle, opt);
+                printf("qser_nw_set_rf_mode ret = %d\n", ret);
             }
             break;
         case 10:
@@ -252,6 +262,27 @@
             }
             break;
         case 11:
+            {
+                E_QSER_NW_IMS_MODE_TYPE_T  ims_mode;
+                printf("please input you want set ims mode (0: off;  1: volte enable \n");
+                scanf("%d", &ims_mode);
+                ret = qser_nw_set_ims_enable(handle, ims_mode);
+                printf("qser_nw_set_ims_enable %d ret = %d\n",ims_mode, ret);
+            }
+            break;
+        case 12:
+            {
+                QSER_NW_IMS_REG_STATUS_INFO_T         t_info;
+                memset(&t_info, 0, sizeof(QSER_NW_IMS_REG_STATUS_INFO_T));
+                ret = qser_nw_get_ims_reg_status(handle, &t_info);
+                printf("qser_nw_get_ims_reg_status ret = %d, detail info:\n", ret);
+                if(ret == 0)
+                {
+                    printf("ims_registration: registration_state=%d\n", t_info.registration_state);
+                }
+            }
+            break;
+        case 13:
             qser_nw_client_deinit(handle);
             break;
         default: