前面学习了属性系统的初始化和加载,还有保存到属性文件等功能,下面来学习属性服务的方面,它主要用来提供一种服务的方式给java虚拟机上层使用,或者java应用程序使用。start_property_service函数的代码如下:

#001  int start_property_service(void)

#002  {

#003      int fd;

#004 

#005      load_properties_from_file(PROP_PATH_SYSTEM_BUILD);

#006      load_properties_from_file(PROP_PATH_SYSTEM_DEFAULT);

#007      load_properties_from_file(PROP_PATH_LOCAL_OVERRIDE);

这段代码是用来加载下面几个缺省的属性文件:

/system/build.prop

/system/default.prop

/data/local.prop

 

#008      /* Read persistent properties after all default values have been loaded. */

#009      load_persistent_properties();

这行代码是用来加载保存为属性文件的属性。

 

#010 

#011      fd = create_socket(PROP_SERVICE_NAME, SOCK_STREAM, 0666, 0, 0);

#012      if(fd < 0) return -1;

#013      fcntl(fd, F_SETFD, FD_CLOEXEC);

#014      fcntl(fd, F_SETFL, O_NONBLOCK);

这段代码是用来创建服务的socket,并设置相应的属性。

 

#015 

#016      listen(fd, 8);

这行代码是让属性服务进入监听状态。

 

#017      return fd;

#018  }

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐