codecamp

config.xml应用配置说明

概述

每一个Widget 包必须有一个名为 config.xml (大小写敏感)的配置文件,它位于Widget包的根目录下。该配置文件包含了关于该Widget的重要信息,如:名称、作者信息、描述、云端ID、偏好设置、权限配置、模块概览等等,并且该配置文件也是整个Widget的入口。

一个简单的config.xml文件配置清单如下:

<widget id="A12345678901"  version="0.0.1">
    <name>API Example</name>
    <description>
        API Example App.
    </description>
    <author email="developer@apicloud.com" href="//www.apicloud.com">
        APICloud.SIR
    </author>
    <content src="index.html" />
    <access origin="*" />
    <preference name="windowBackground" value="#FFF" />
    <permission name="call" />
    <feature name="weiXin">
        <param name="urlScheme" value="wx7779c7c063a9d4d9" />
    </feature>
</widget>
注:该XML文件必须采用UTF-8编码。

配置清单描述

widget父元素描述了该Widget的基本属性,如表1所示。

  • 表1. widget父元素的属性
属性名 描述 备注
id 应用ID,由云服务器自动分配。它是该Widget在云端的唯一标识。云服务器根据此ID对Widget进行管理并提供辅助服务,如:更新升级、统计分析、推送服务等。 必选
version Widget的版本号 必选
sandbox 配置此属性后,APICloud应用在运行之初,将会在设备的SD卡上建立与此属性同名的文件夹根目录,并将该目录默认为本应用的沙箱根路径,此后应用运行过程中所有涉及的文件操作如:文件读写,拍照、下载等等,操作结果的文件都将存放在该路径下。该属性仅Android平台生效 可选

配置中的XML元素如表2所示。

  • 表2. Widget配置元素
元素名 描述 备注
name Widget的名称。如:QQ、新浪微博、微信等 必选
description Widget的简单描述信息 可选
author Widget的作者信息 可选
content Widget运行的起始页,支持相对/绝对路径 必选
access 在哪些页面里面可以访问APICloud的扩展API。一般配置“*”,代表所有页面都允许访问 可选
preference 偏好设置。配置Widget的一些运行时属性,如:页面是否支持弹动效果、窗口默认背景、页面是否显示滚动条等。该配置可在APICloud Studio的GUI界面中选择并使用。详细请参考Preference Guide 可选
permission 权限配置。通过此配置向系统声明Widget所用到的系统权限。如:直接拨打电话、直接发送短信、发起定位等。该配置可在APICloud Studio的GUI界面中选择并使用。详细请参考Platform Permission 必选
feature 功能配置。通过此配置,向系统声明需要使用哪些功能,以及需要传递给该功能的数据。如:使用新浪微博、使用微信分享等。该配置可在APICloud Studio的GUI界面中选择并使用。详细请参考Feature Guide 可选
font 字体配置。通过此配置,将自定义字体加入到应用中,使其可以在前端页面使用该字体 可选
Android签名证书描述及使用流程
数据云1.0服务开发指南
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

端API

设备访问

ipAddress

wifiSSID

smartConfigCheyw

无标题文章

前端框架

云API

开发工具

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }