Error: “discard” is not translated in “de” 解决方法

当我在使用ionic android build –release 命令打正式apk包的时候,弹出了以下错误提示

Error: “discard” is not translated in “de…..

根据提示,应该是里面的一个cordova插件翻译不全导致的

解决办法就是忽略这个翻译检测

platforms/android/build.gradle里的android{}区块里

添加以下配置

 

 

ios9和xcode7开发问题汇总(持续更新)

汇总一些更新到ios9或者使用xcode7的问题及解决方法。

 

问题:Unexpected CFBundleExecutable Key.The bundle atXXXX

解决方法:

删除第三方info.plish里的Executable file项

20150925141023868

 

 

问题:-canOpenURL: failed for URL: “weixin://app/wxdaae92a9cfe5d54c/” – error: “This app is not allowed to query for scheme weixin”

解决办法:

OS 9系统策略更新,限制了http协议的访问,此外应用需要在“Info.plist”中将要使用的URL Schemes列为白名单,才可正常检查其他应用是否安装。

一些常用的白名单

Cordova/CDVViewController.h file not found in Xcode 7.1

使用xcode7.1 打包的ionic应用的时候出现以此错误:

Cordova/CDVViewController.h file not found

后来在官网论坛找到答案:

http://forum.ionicframework.com/t/cordova-cdvviewcontroller-h-file-not-found-in-xcode-7-1-beta/32232

具体解决办法为:

在Xcode 的build setting – user header path 添加一行配置即可

“$(OBJROOT)/UninstalledProducts/$(PLATFORM_NAME)/include”

 

Numbers打开csv乱码解决方法

使用numbers打开csv的时候出现乱码多数是由于文件编码导致的

可以使用numbers导出相应编码转换,也可以使用iconv命令进行转换。

在终端下输入:

sed command a expects followed by text

脚本里有一句替换文件内容的命令,但是在mac下就提示

sed command a expects followed by text

的错误,于是仔细对比了sed在mac和centos下的命令解释

mac下:

 -i extension

             Edit files in-place, saving backups with the specified extension.

             If a zero-length extension is given, no backup will be saved.  It

             is not recommended to give a zero-length extension when in-place

             editing files, as you risk corruption or partial content in situ-

             ations where disk space is exhausted, etc.

centos下:

 -i[SUFFIX], –in-place[=SUFFIX]

                 edit files in place (makes backup if extension supplied).

                 The default operation mode is to break symbolic and hard links.

                 This can be changed with –follow-symlinks and –copy.

通过比较发现,mac下水i 为了备份修改的文件,所以强制要指定一个后缀名,而centos下时可选的。

所以更完整的命令为

 

Android 点击空白区域窗口不消失的方法

API 11以后添加了相应的方法,我们可以直接调用

来进行设置

那么API 11之前的呢?

我们可以首先在View创建之前设置两个Flag,一个设置窗口为非模式的,这样除窗口外的内容就可以获得touch事件,然后设置窗口外部touch事件发生时的通知。最后重写onTouchEvent,监听窗口外的Touch事件。这样就可以在监听方法中自定义窗口外点击事件的响应,是否关闭窗口或者其他操作。

具体代码如下: