帖子
帖子
用户
博客
课程
12下一页
返回列表 发新帖
显示全部楼层
1682
帖子
10
勋章
Y币

[其他] APICloud常见问题(12月5日更新)

 关闭 [复制链接]
发表于 2014-10-24 15:44:46
APICloud常见问题(12月5日日更新)


APICloud上线以来,谢谢大家对APICloud提出的意见和建议,我们把近期的常见问题进行了整理,方便大家查询!

以后常见问题将统一整理到,文档里的FAQ栏目,请大家自行查找,希望对大家有帮助!
http://docs.apicloud.com/其它/faq
      
问:怎么把url的图片文件保存到本地?
答:api.download

问:如何定义底部菜单按钮打开内置的html页面,是用open  frame,还是什么方法?
答:openFrame    openWin  都可以

问:为什么本地打包的安装包比云编译的包大很多啊?为什么本地一个hellp world安装包都10M了 ,云编译出来才0.7M?
答:本地打包包含所有模块,而云编译只包含使用的模块

问:用户的登录信息用什么保存好?cookie、localstorage还是什么?
答:localstorage或者api.setPres或者
      
问:听说APICloud支持了代码加密,请问前后的APP运行速度会不会受到影响?
答:前后对比一下就行,速度不会受影响的。
      
问:有和PHP开发相关的文档吗
答:你的服务器可以用php开发,开放接口给客户端,客户端用ajax和服务器交互
      
问:重新加载页面是要哪个函数啊?
答:重新 open或者 window.location = window.location
      
问:APICloud有录视频的功能吗?
答:api.getPicture 配置下参数,sourceType 设为camera,mediaValue 设为 video
      
问:setStorage与setPrefs有什么区别
答:一个是localStorage html5的本地存储  一个是原生api的存储
   
问:tabBar跟tabBarMenu,有啥不一样呢?
答:一个是纯粹的tabBar,后者是带弹出菜单的tabBar

问:用APICloud本地存储的数据是一定会同步到云端的吗?
答;本地存储一定不会上传到云端,post可以传回服务器,本地存储里面的不写程序 不会自动同步到云
      
问:actionbutton点击子按钮以后不自动隐藏?
答:actionbutton点击子按钮以后不自动隐藏这个问题会在本周出新版本,把隐藏不隐藏交给开发者自定义
      
问:有人知道怎么调自己写的模块,怎么放到ide里面去?是不是需要重新生成一个AppLoader?
答:目前需要上传到云端,然后在线编译,选中你的那个自定义模块IDE目前还么提供本地测试自定义模块的功能,你可以先找一个干净的模块开发工程,把你release出来的模块包中的东西再重新拷到这个工程中,如果能跑起来,不报错,那这个包上传到云端基本就不会有问题了,
      
问:apicloud有没有wifi类的API?
答:IOS设备系统上没开放wifi管理相关的接口,Android是开放的,没有办法统一,所以目前没有提供,如果有需求的话,可以单独为android平台封装该模块
      
问:当前时间戳是怎么调用的?
答:new Date().getTime();
      
问:我写了一个城市列表。假如选定了返回,我如何又返回到城市列表呢?
答:用api.execScript,执行之前页面的api.closeWin();
      
问:使用模块 必须到云端先添加 模块 然后IDE更新了 才能用哪个模块?
答:IDE真机调试装了apploader的不需要添加模块IDE是集成了模块的,云端编译我想需要添加模块编译的
     
推送怎么弄?为甚么苹果的推送用不了?安卓的可以
答:IOS的推送需要你自己的推送证书,要到苹果申请,你可以先试试android的,安卓的证书在我们控制台生成。另外,我们的推送服务不收费。

问:请问一下,这么获取父窗口的名字啊?
答:api.winName
      
问:reload和open的区别是什么?
答:reload 就是 只是 刷新数据  .  open 的话 ,要重新建个对象 内存占用大

问:ios是不是不上传证书不可以编译正式版?
答:是的,具体证书得去苹果申请。

问:APICLOUD有什么方法可以关闭当前窗口啊,所有窗口怎么写?
答:可以调用api.closeWin(),api.closeToWin({name:'xxx'}),从当前窗口关闭到你想关的那个窗口

问:pointer  跟 relation的区别?
答:pointer是指这张表的这个字段指向另一张表的某个字段,用于表与表之间建立一对一的关系;relation是指这张表的这个字段指向另一张表中的某几个行的集合,用于表与表之间建立一对多的关系;
      
问:model和query的接口文档在哪里?
答:mcm
      
问:Location services are not enabled.  ,ios调用  baiduLocation  怎么会出现这个?
答:没有开启手机定位。
      
问:listview 可以同时设置上拉刷新和下拉刷新吗?
答:可以

问:apicloud中网页的图片有缓存的机制吗?
答:有的,存在沙箱中。

问:请问 APICloud的开发环境,支持linux系统么?
答:linux,mac暂时不支持,以后版本会支持。

问:apiCloud的UI结构,window跟frame是啥关系?是否一个app一次只能展示一个window,但可以有多个frame
答:一个app就是一个widget;每个widget允许有多个window,同时只允许一个window位于屏幕上,所以你可以将window看成当前屏幕;每个window下可以有多个frame和frameGroup,frame和frameGroup依附在window上,frameGroup包含一个可以横拖的frame数组。
      
      

问:APICloud  IDE IDE,在mac下能用吗?
答:暂时没有 MAC版本的IDE,现在只能通过虚拟机的方式在MAC使用IDE。

问:怎么读 config.xml 呢?
答: NSArray * fetures = [theApp features];ios上的模块内部这样就读取config.xml,Android下面有继承自UZMoudule的对象下有getFeatureValue函数可用

问:数据从哪里调,是要从APIcloud里,还是我可以自己弄?
答:ajax  或者 官方的 mcm 云数据库 模块  

问:ios的证书后台上传,不分企业证书和正式证书吗?
答:您的这个应用要使用那个类型的证书,就上传哪个。

问:APICloud这个能用其他人的sdk么?怎么弄?
答:可以使用,可以把您的SDK封装,让它以APICloud模块的方式运行。

问:com.apicloud.ID, 这个ID在哪里改?
答:在控制台证书里面修改。

问:在创建应用的时候可以选择Native还是Web,Web需要填写网址,但是创建完了好像没有差别,这两个用途有什么差别呢?
答:web可以把你的手机web站点直接编译成app安装包,比如:淘宝编译

问:APIcloud推送消息调用哪个模块
答:push

问:AppLoader能测试支付宝模块么?   
答;这个需要真实的商家id和支付公钥密钥,你需要以商家的身份去跟支付宝签约才能得到这些东西。
      
问:打开已经打开过的window的时候,怎样强制让这个window打开后刷新?   
答:强制刷新能力在下一版本中将支持,openFrame或者win时新增参数reload:true,标识强制已经存在的frame或win重新加载。
      
问:api开发的app ios最低支持哪个版本?   
答:IOS 5.0
      
问:请问有没有关于UI库的文档?CSS要不要去考虑不同分辨率的兼容?   
答:APICloud不建议使用CSS或者JS框架,因此没有相关文档。css中,计量单位使用px即可,不用考虑屏幕因素,尽量使用弹性布局,APICloud中任何流行的js/css框架都可以使用,而且完全兼容,只是不提倡使用,框架大都臃肿冗余低效。

问:用APICloud这个平台开发都用几套UI图,一般要出什么尺寸的效果图去量图啊?
答:APICloud开发量图等和原生开发一样使用px作为元素单位,平台内部会做转化,应用只需提供一套合适尺寸的UI即可,整个机制对于所有分辨率都自动适配,例如iphone6 plus
      
问;请问一下openWin或者openFrame的时候,传的pageParam参数,在被打开的页面中这么获取?   
答:通过api.pageParam获取。
            
问:头部标题栏把状态栏遮住了怎么办?怎么修改标题栏的颜色?   
答:api.setStatusBarStyle({
    style: 'light'
}); 可以设置状态栏样式为浅色,
如果你不想iOS中头部和状态栏重合,就不用调用$api.fixIos7Bar()方法,同时在config.xml里面把iOS7StatusBarAppearance配置成false。
  
问:下拉和上滑都刷新,请问怎么实现?
答:上拉刷新目前没有提供,可以使用监听滚动到底部时实现加载更多。
         
问:ide生成的快速测试包怎么在ios上不能安装?      
答:ide生成的快速测试包,只能安装在越狱设备上。
           
问:请问拍照的API在哪里?
答:api.getPicture
   
问:我在窗口打开的时候添加了一个事件侦听,当这个窗口关闭的时候要移除事件侦听吗?  
答:被api.closeWin的window不用做任何操作,底层会自动将这个window的所有内存进行回收和释放,包括各种模块的调用占用的资源网络请求占用的资源等等。

问:APICoud有没有自己的UI库?
答:没有提供UI库,APICloud不提倡使用CSS/JS框架(库),框架大都臃肿低效,建议css/js代码都集中在一个html文件中,少数共用的js函数或者css样式可以单独抽出然后在页面中引用,这样既方便代码管理同时可加速解析和渲染效率。

问:app启动时可以添加图片或着动画效果吗?
答:在控制台 “端设置” 里,鼠标悬停分辨率就可以出现上传按钮。
      
问:焦点图模块scrollPicture 怎么在指定位置显示么?
答:open的时候配置他的xywh(视图左上角点坐标和宽高)就行了,还有可以用fixedOn来指定添加到某个窗口上。
      
问:云修复和版本增量更新如何使用,求说明?   
答;更新地址指的是zip包的网络地址,只是提供两种方式,一种是直接上传到网站,一种是存储在自己的网络位置,然后填地址;云修复和增量更新,只提供更新部分资源即可,但要保持整个widget的目录结构不变。

问:Svn同步widget失败
答:如果是ide创建的应用,先在ide中同步代码,然后在云端打包。
      
问:微信的key怎么申请?微信分享后没有回调
答:需要自己想去微信申请一个key。参考这份文档,申请weixin的key
微信分享成功后本身没有回调,所以weixin分享模块也没有回调,那个回调是个假的,只要代码中调了就有回调。如果分享成功的话,就一定会弹出微信的分享框。

问:第三方配置说明

问:openWin和openWidget有啥区别啊
答:APICloud以widget来形容一个完整的App,相当于一个单独的App;每个widget由N个window构成,每个window中可以包括N个FRAME。因此openWidget相当于打开一个新的应用,openWin是在这个应用内打开一个占据屏幕UI渲染空间的window。
      
问:关于fs widget 之类的目录结构说明在哪呢?
答:widget://协议是指以你的widget目录为根目录,对应下面的子目录;fs://是APICloud在你的SD卡上(Android),或者document目录下(ios)为本应用虚拟的一个沙箱目录的根目录,根目录的名称为你的应用ID。Android上对应为sdcard/UZMap/Axxxxxxxxxx,还有一个cache://等同于fs://,fs://可读可写,widget://只可读,苹果对下载的文件的存放位置有要求,所以扩展了cache://协议。
      
问:如果是做增量更新或云修复的话,只替换包中的某些html文件或者图片的话,最佳实践该怎么弄呢?
答:只把这些有更新或者关联更新的文件打成个zip包上传即可。
      
问:UZUtility.makeRealPath(path,wgtInfo)这个API,是否是将 fs:// 等转换为真实路径?第二个参数:wgtInfo 是什么?
答:可以转,但是对应的是SD卡上的沙箱路径,wgtInfo是模块开发中,继承自UZMODLUE对象下的类,可以直接getWidgetInfog获取
      
问:api.openWin({name:'index', url:'../index.html', delay:100, pageParam: pageParam});我打开index.html,并传页面参数,请问怎么在index.html获
参数?
答:api.pageParam   http://docs.apicloud.com/端API/api#a12
      
问:如果我想插件里主动触发一个JS的事件,而不是JS->JAVA->JS这种回调模式的话,插件里该如何实现呢?比如:我的一个播放视频的插件,需要每个N时间,
当前进度告诉JS的事件。
答:UZModule下面有个execScript(final String winName, final String frameName, final String script)函数,可以通过执行JS来实现你的需求。
      
问:如何删除应用
答:在控制台应用概览里的应用ICON图标的右下角有个三角标,点击一下即可出现删除按钮。
      
问:apicloud里调用的全是单击事件 好像没触摸事件? 比如一个按钮 都是onclick 并不是touchstart
答:需要响应onclick的元素,加上tapmode='xxx'属性即可,xxx可以是一个css样式,当该元素touchstart touchmove的时候就会展现xxx样式,tapmode还具有
速点击事件的功能,消除了JS中标准click事件的300毫秒延迟;有tapmode已经很完善了,如果需要,可以自行在代码中监听。
      
问:怎样实现全局变量的呢?比如用户的名称,在很多页面都有用到。
答:api.setPrefs   api.getPrefs  这一对可以实现全局变量。
      
问:api.require('db');和api中的mcm如何应用?
答:db用于本地数据库操作,mcm和云端数据进行交互,用法可以参考两者的文档。
      
问:这个跟新增的user 没设定accessTokens有关系么?
答: accessToken:在调用user对象的login函数后,服务器会为该登录用户分配一个accessToken,不登录不会分配。
      
问:navigationMenu 这个控件是否支持左右滑动?
答:支持,如果按钮太多,一屏显示不完,就可以左右拖动了。
      
问:initial-scale=0.5, maximum-scale=0.5, user-scalable=0;    scaleEnabled: true  安卓下不起效
答maximum-scale=0.5,minimum-scale=0.5,user-scalable=1,width=device-width,initial-scale=0.5
      
问:navigationMenu不支持调样式吗 比如我想调下高度
答:目前这个控件的高度是自适应屏幕大小的。
      
问:能否直接连接我们自己公司的服务器数据库?怎么弄
答:可以的,和自己服务器交互用ajax接口就可以了    http://docs.apicloud.com/端API/api#3

问:scrollPicture 的 fixedOn 是干什么用的? 所指的视图是什么?
我想把scrollPicture 嵌入到 Frame 中,跟着Frame 隐藏或者显示或者关闭?要怎么实现?
答:fixedOn的值是frame的名称,默认scrollPicture是添加到主窗口上面的,若指定frame的名称,则会添加到指定的frame上面,也就是你想要的效果了。
      
问:请问有直接拍照功能吗?
答:有的,api的getPicture方法,sourceType参数传camera就是拍照了。
      
问:api.openSlidLayout 开启的fixedPane slidPane 2win 还是 2 Frame
答:两个Pane是两个window,即主窗口。
      
问:在slidPane main-contain.html 中另外开启了一个Frame_1,在 Frame_1中开启了Frame_1_1   Frame_1_2,为什么用 closeFrame 关闭了 Frame_1Frame_1_1   Frame_1_2 还在?难道Frame_1 Frame_1_1 Frame_1_2 是平级关系,主窗口都属于slidPane main-contain.html
答:在同一个主窗口下打开的frame目前都是平级关系,它们都是添加到主窗口上面的,关闭其中一个frame对其它frame没有影响。
      
问:为什么 tabbar 在 ios下 点击后直接退出应用? andriod下正常
答:可以设置每屏显示按钮个数,底层会自适应屏幕平均分配按钮间距。
     
问:frame 怎么获取参数
答:目前能够获取的frame属性有宽度、高度、名称和参数,通过api.frameWidth、api.frameHeight、api.frameName和api.pageParam获取。
      
问:api.openFrame方法中带入的 pageParam 和 api.openWin方法中带入的pageParam 怎么区分?
答:你在主窗口中调用api.pageParam,获取的是openWin传入的参数;而在子窗口中调用api.pageParam,获取的是openFrame传入的参数。
      
问:在开发自定义第三方模块时,IOS代码中如何调用JS中的函数,在用Obj-c开发原生模块时,如何将socket返回的聊天信息 返回给前端JS, 是否通过JS传入的回调函数进行?
答:返回信息给前端js有两种方法:
1、使用UZModule对象的 sendResultEventWithCallbackId: dataDict: errDict: doDelete:方法,其中的callbackId可以从你的方法的参数中通过cbId参数获取。
2、直接回调网页中的js方法,UZModule对象的uzWebview属性,其继承于UIWebview,可以直接使用UIWebview的 stringByEvaluatingJavaScriptFromString:方法执行js代码。
      
问:如何读取Frame的属性
答:判断frame是否存在可以在代码中用一变量标识;目前能够获取的frame属性有宽度、高度和名称,通过api.frameWidth、api.frameHeight和api.frameName获取。

问:是否能够在云端写自己的业务代码?
答:开发者可以根据APICloud的云API,自定义自己的后台管理界面,可以通过组合数据云相关API,来增加自己的功能,就像您刚上面提到了“自动数据清理”,
现方式就是开发者的程序定时调用数据删除的接口。
      
   

0
帖子
0
勋章
Y币
支不支持ipad应用开发
以及是否支持ios8和适配iphone6和plus ?
28
帖子
1
勋章
1万+
Y币
hufain 发表于 2014-10-31 10:57
支不支持ipad应用开发
以及是否支持ios8和适配iphone6和plus ?

支持iPad应用开发,完美适配iOS8和iPhone 6、iPhone 6 Plus
2
帖子
0
勋章
Y币
非常棒,学习中。。。
51
帖子
0
勋章
206
Y币
谢谢! 对小白很有用
0
帖子
0
勋章
6
Y币
ios真机测试只能是越狱机才能同步?
0
帖子
0
勋章
6
Y币
dcloud 不越也能同步到iphone上真机测试哦
1682
帖子
10
勋章
6
Y币
水如清 发表于 2014-11-19 15:47
dcloud 不越也能同步到iphone上真机测试哦

这样真的好吗?  真机不关越狱的事情。
0
帖子
0
勋章
6
Y币
问题是,我现在用ApiCloud不能安装到iphone上进行真机测试呢?有解决方案么,有不少人遇到这个问题
1
帖子
0
勋章
17
Y币
支持,给力顶起!
12下一页
您需要登录后才可以回帖 登录

本版积分规则