HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

h5+安卓判断通知权限,打开通知权限

uniapp

以下是uniapp代码
1、安卓代码

var main = plus.android.runtimeMainActivity();  
var pkName = main.getPackageName();  
var NotificationManagerCompat = plus.android.importClass("android.support.v4.app.NotificationManagerCompat");  
var packageNames = NotificationManagerCompat.from(main);  
console.log(JSON.stringify(packageNames));  
if (packageNames.areNotificationsEnabled()) {  
    console.log('已开启通知权限');  
}else{  
    uni.showModal({  
        title: '提示',  
        content: '请先打开APP通知权限',  
        showCancel: false,  
        success: function (res) {  
            if (res.confirm) {  
                var Intent = plus.android.importClass('android.content.Intent');  
                var intent = new Intent('android.settings.APP_NOTIFICATION_SETTINGS');//可设置表中所有Action字段  
                intent.putExtra('android.provider.extra.APP_PACKAGE', pkName);  
                main.startActivity(intent);  
            }  
        }  
    });  
}

2、苹果代码

var UIApplication = plus.ios.import("UIApplication");  
var app = UIApplication.sharedApplication();  
var enabledTypes  = 0;  
if (app.currentUserNotificationSettings) {  
    var settings = app.currentUserNotificationSettings();  
    enabledTypes = settings.plusGetAttribute("types");  
} else {  
    //针对低版本ios系统  
    enabledTypes = app.enabledRemoteNotificationTypes();  
}  
plus.ios.deleteObject(app);  
if ( 0 == enabledTypes ) {  
    uni.showModal({  
        title: '提示',  
        content: '请先打开APP通知权限',  
        showCancel: false,  
        success: function (res) {  
            if (res.confirm) {  
                var UIApplication = plus.ios.import("UIApplication");  
                var NSURL = plus.ios.import("NSURL");  
                var setting = NSURL.URLWithString("app-settings:");  
                var application = UIApplication.sharedApplication();  
                application.openURL(setting);  
                plus.ios.deleteObject(setting);  
                plus.ios.deleteObject(application);  
            }  
        }  
    });  
}  
继续阅读 »

以下是uniapp代码
1、安卓代码

var main = plus.android.runtimeMainActivity();  
var pkName = main.getPackageName();  
var NotificationManagerCompat = plus.android.importClass("android.support.v4.app.NotificationManagerCompat");  
var packageNames = NotificationManagerCompat.from(main);  
console.log(JSON.stringify(packageNames));  
if (packageNames.areNotificationsEnabled()) {  
    console.log('已开启通知权限');  
}else{  
    uni.showModal({  
        title: '提示',  
        content: '请先打开APP通知权限',  
        showCancel: false,  
        success: function (res) {  
            if (res.confirm) {  
                var Intent = plus.android.importClass('android.content.Intent');  
                var intent = new Intent('android.settings.APP_NOTIFICATION_SETTINGS');//可设置表中所有Action字段  
                intent.putExtra('android.provider.extra.APP_PACKAGE', pkName);  
                main.startActivity(intent);  
            }  
        }  
    });  
}

2、苹果代码

var UIApplication = plus.ios.import("UIApplication");  
var app = UIApplication.sharedApplication();  
var enabledTypes  = 0;  
if (app.currentUserNotificationSettings) {  
    var settings = app.currentUserNotificationSettings();  
    enabledTypes = settings.plusGetAttribute("types");  
} else {  
    //针对低版本ios系统  
    enabledTypes = app.enabledRemoteNotificationTypes();  
}  
plus.ios.deleteObject(app);  
if ( 0 == enabledTypes ) {  
    uni.showModal({  
        title: '提示',  
        content: '请先打开APP通知权限',  
        showCancel: false,  
        success: function (res) {  
            if (res.confirm) {  
                var UIApplication = plus.ios.import("UIApplication");  
                var NSURL = plus.ios.import("NSURL");  
                var setting = NSURL.URLWithString("app-settings:");  
                var application = UIApplication.sharedApplication();  
                application.openURL(setting);  
                plus.ios.deleteObject(setting);  
                plus.ios.deleteObject(application);  
            }  
        }  
    });  
}  
收起阅读 »

关于运行时报 ./common/main.wxss error at token "url" 问题的解决办法

uniapp

多数引发此问题的小伙伴,都是在引入外部 CSS 时使用了如下写法:

@import url("/graceUI/graceUI.css");

应当修改下路径为相对路径的格式,如下:

/* 写法一 */  
@import url("./graceUI/graceUI.css");  
/* 写法二 */  
@import "./graceUI/graceUI.css";
继续阅读 »

多数引发此问题的小伙伴,都是在引入外部 CSS 时使用了如下写法:

@import url("/graceUI/graceUI.css");

应当修改下路径为相对路径的格式,如下:

/* 写法一 */  
@import url("./graceUI/graceUI.css");  
/* 写法二 */  
@import "./graceUI/graceUI.css";
收起阅读 »

uni-app编译报caniuse-lite is outdated的处理方案

caniuse_lite

caniuse库过期问题的原因

uni-app的编译器是基于npm的,依赖了众多包括webpack在内的npm库,这些库又引用了一个三方库caniuser-lite。
caniuser-lite这个库的代码里有个浏览器兼容数据的更新检查,过老的数据影响自动补齐css前缀。
开发者平时写uni-app时并不需要手动补浏览器的css前缀,就是因为这个库在自动补前缀。
这个库它自己每半年过期一次,过期后会报错如下:

Browserslist: caniuse-lite is outdated. Please run next command `npm update caniuse-lite browserslist`

这个报警不影响编译成功,只是告警提示

对于熟悉npm的开发者,这个报警不足为奇,按命令提示更新即可。
但HBuilderX的很多开发者不熟悉npm,遇到问题可能就不知该怎么办了。
目前可用的解决方案如下几种:

解决方案1,升级HBuilderX或cli

不要用半年前的HBuilderX,或cli,持续保持升级。(HBuilderX2.8.11之前的版本存在过期问题,升级到2.8.11即可)

解决方案2,在老版HBuilderX下手动升级caniuse-lite的npm库

如果不想升级HBuilderX ,也可在老版下解决问题。

  • 项目是HBuilderX创建的
    1. 打开HBuilderX的安装目录, HBuilderX/plugins/uniapp-cli
    2. 删除node_modules以及package-lock.json
    3. 在当前目录执行npm install

  • 如果你的项目是cli创建的,请自行在cli环境下升级npm包
继续阅读 »

caniuse库过期问题的原因

uni-app的编译器是基于npm的,依赖了众多包括webpack在内的npm库,这些库又引用了一个三方库caniuser-lite。
caniuser-lite这个库的代码里有个浏览器兼容数据的更新检查,过老的数据影响自动补齐css前缀。
开发者平时写uni-app时并不需要手动补浏览器的css前缀,就是因为这个库在自动补前缀。
这个库它自己每半年过期一次,过期后会报错如下:

Browserslist: caniuse-lite is outdated. Please run next command `npm update caniuse-lite browserslist`

这个报警不影响编译成功,只是告警提示

对于熟悉npm的开发者,这个报警不足为奇,按命令提示更新即可。
但HBuilderX的很多开发者不熟悉npm,遇到问题可能就不知该怎么办了。
目前可用的解决方案如下几种:

解决方案1,升级HBuilderX或cli

不要用半年前的HBuilderX,或cli,持续保持升级。(HBuilderX2.8.11之前的版本存在过期问题,升级到2.8.11即可)

解决方案2,在老版HBuilderX下手动升级caniuse-lite的npm库

如果不想升级HBuilderX ,也可在老版下解决问题。

  • 项目是HBuilderX创建的
    1. 打开HBuilderX的安装目录, HBuilderX/plugins/uniapp-cli
    2. 删除node_modules以及package-lock.json
    3. 在当前目录执行npm install

  • 如果你的项目是cli创建的,请自行在cli环境下升级npm包
收起阅读 »

简单的mui手机移动端触屏滑动删除代码

mui

一款简单的mui手机移动端触屏滑动删除代码,支持左右两边滑动删除,触屏滑动列表项目显示删除按钮,点击进行删除。

下载地址:https://www.sucaihuo.com/js/3805.html

继续阅读 »

一款简单的mui手机移动端触屏滑动删除代码,支持左右两边滑动删除,触屏滑动列表项目显示删除按钮,点击进行删除。

下载地址:https://www.sucaihuo.com/js/3805.html

收起阅读 »

支付接口问题, 终于搞定了! 特写这封感谢信!

支付

感谢信

 话说最近遇到个很奇怪的问题.  支付接口调用后. 竟然不弹框出来.  根本无法继续完成支付..  

在问答发了几个帖子. 终于等到 "DCloud_iOS_XHY" 这位哥们的回复, 加了QQ 哥们帮我调了好久. 我们慢慢一步步定位问题原因.. 从证书, 到环境,到代码, 到基座. 折腾好久.
终于在刚刚搞好了. 困扰我多天的问题终于搞定了.初步定位问题是, 最近苹果更新了各种账户角色, 导致我手机登录开发者账号的苹果ID时. 沙箱无法进行内购测试. DCloud_iOS_XHY 兄弟. 再一次感觉你的帮助. 同时祝dcloud越做越好!!

默默支持你们的开发者敬上
2019-01-19

继续阅读 »

感谢信

 话说最近遇到个很奇怪的问题.  支付接口调用后. 竟然不弹框出来.  根本无法继续完成支付..  

在问答发了几个帖子. 终于等到 "DCloud_iOS_XHY" 这位哥们的回复, 加了QQ 哥们帮我调了好久. 我们慢慢一步步定位问题原因.. 从证书, 到环境,到代码, 到基座. 折腾好久.
终于在刚刚搞好了. 困扰我多天的问题终于搞定了.初步定位问题是, 最近苹果更新了各种账户角色, 导致我手机登录开发者账号的苹果ID时. 沙箱无法进行内购测试. DCloud_iOS_XHY 兄弟. 再一次感觉你的帮助. 同时祝dcloud越做越好!!

默默支持你们的开发者敬上
2019-01-19

收起阅读 »

解决方法:关于更新微信新版本(1.02.1901170)出现appJSON["requiredBackgroundModes"] 需至少存在一项的问题

今天更新了微信小程序版本,当通过微信小程序调试时提示了一个错误
> VM94:4 Fri Jan 18 2019 16:23:55 GMT 0800 (中国标准时间) app.json 文件内容错误
VM94:5 appJSON["requiredBackgroundModes"] 需至少存在一项
>

然后看了一下文档,发现需要在manifest.json 源码视图模式 mp-weixin 能力中添加 "requiredBackgroundModes" : [ "audio" ]

附上链接:https://uniapp.dcloud.io/collocation/manifest?id=mp-weixin

继续阅读 »

今天更新了微信小程序版本,当通过微信小程序调试时提示了一个错误
> VM94:4 Fri Jan 18 2019 16:23:55 GMT 0800 (中国标准时间) app.json 文件内容错误
VM94:5 appJSON["requiredBackgroundModes"] 需至少存在一项
>

然后看了一下文档,发现需要在manifest.json 源码视图模式 mp-weixin 能力中添加 "requiredBackgroundModes" : [ "audio" ]

附上链接:https://uniapp.dcloud.io/collocation/manifest?id=mp-weixin

收起阅读 »

插件发布:图像转为base64、base64存储为图片

uniapp uni_app base64

image-tools

图像转换工具,可用于如下环境:uni-app、微信小程序、5+APP、浏览器

插件地址:http://ext.dcloud.net.cn/plugin?id=123

使用方式

NPM

npm i image-tools --save
import { pathToBase64, base64ToPath } from 'image-tools'

直接下载

// 以下路径需根据项目实际情况填写  
import { pathToBase64, base64ToPath } from '../../js/image-tools/index.js'

API

pathToBase64

从图像路径转换为base64,uni-app、微信小程序和5+APP使用的路径不支持网络路径,如果是网络路径需要先使用下载API下载下来。

pathToBase64(path)  
  .then(base64 => {  
    console.log(base64)  
  })  
  .catch(error => {  
    console.error(error)  
  })

base64ToPath

将图像base64保存为文件,返回文件路径。

base64ToPath(base64)  
  .then(path => {  
    console.log(path)  
  })  
  .catch(error => {  
    console.error(error)  
  })
继续阅读 »

image-tools

图像转换工具,可用于如下环境:uni-app、微信小程序、5+APP、浏览器

插件地址:http://ext.dcloud.net.cn/plugin?id=123

使用方式

NPM

npm i image-tools --save
import { pathToBase64, base64ToPath } from 'image-tools'

直接下载

// 以下路径需根据项目实际情况填写  
import { pathToBase64, base64ToPath } from '../../js/image-tools/index.js'

API

pathToBase64

从图像路径转换为base64,uni-app、微信小程序和5+APP使用的路径不支持网络路径,如果是网络路径需要先使用下载API下载下来。

pathToBase64(path)  
  .then(base64 => {  
    console.log(base64)  
  })  
  .catch(error => {  
    console.error(error)  
  })

base64ToPath

将图像base64保存为文件,返回文件路径。

base64ToPath(base64)  
  .then(path => {  
    console.log(path)  
  })  
  .catch(error => {  
    console.error(error)  
  })
收起阅读 »

一周 D 报 (2019-01-18)

周报

HBuilderX 已正式发布 1.5.0 版本,本次有以下几个重要更新:

  • 新增 typescript 在vue里内联使用
  • 为加快调试速度,运行到微信小程序时取消代码压缩。正式发布,需点击发行菜单操作
  • 减小编译器体积,精简依赖文件
  • 支持字体及背景图片使用本地资源(编译器自动将其编译为base64方式,要求大小在40k以内)
  • less/scss/stylus/ts 等预编译语言支持条件编译 详情
  • 支持通过 process.env.NODE_ENV 进行运行环境判断,并提供快捷代码块uEnvDev、uEnvProd,详情
  • App平台 新增 TabBar 相关 API:setTabBarItem、setTabBarStyle、hideTabBar、showTabBar
  • H5平台 新增 组件:cover-view、cover-image
  • H5平台 优化 image 组件支持浏览器中的长按识别

详细更新日志请见:更新日志

问题清单

Q: uni-app打包成h5,怎么设置不同页面显示不同的标题啊?
A: 在 h5 平台,js 是不受限制的,可以直接使用 document.title = xxx。

Q: nvue真机上onNavigationBarButtonTap无效
A: .vue 和 .nvue 的 onNavigationBarButtonTap 处理有所不同,参照:nvue onNavigationBarButtonTap

Q: uni-app app端 map上显示点位详情
A: 这个问题在于不同平台规范的差异。cover-view

  • 5+App中 cover-view、cover-image 中不支持嵌套其它组件。
  • 5+App中暂不支持 cover-view、cover-image 组件之间的嵌套。
  • 其他小程序平台下,可以使用条件编译,完全按照其规范开发。

Q: uniapp的tabBar可以自定义样式吗?
A: 受限于平台差异,目前仅可以修改 tababr 图标、文字、选中前后颜色、角标等。

Q: 在uni-app中是否不支持after之类的伪类?
A: uni-app 目前提供的选择器支持

Q: 请问 uniapp 可以设置状态栏吗
A: 在 App端 可以使用 5+Api 进行相关的修改。 状态栏修改

Q: input聚焦后,弹出软键盘,又自动关闭,什么原因?
A: 如果想在显示 input 后自动聚焦的话,我们可以使用 v-if 并动态给 focus 属性赋值为 true。

Q: 平时12px的应该怎么换算upx,字体在uni用什么单位比较好,用px会不会有什么影响?
A: uni-app 使用 upx 作为默认尺寸单位,upx 是相对于基准宽度的单位,可以根据屏幕宽度进行自适应。查看upx文档

Q: uni-app有没有长按复制
A: 在 uni-app 中只有 text 组件支持长按选中的功能。查看text组件文档

Q: 登录后获取到用户数据,跳转到指定的页面没有刷新,要手工刷新页面。有什么办法可以跳转到页面并刷新吗?
A: uni-app 中是没有重新加载页面和刷新页面的概念的。如果想要实现以上功能,我们一般会使用 vuex,或者在onShow中去处理数据,重新渲染数据。

Q: 在uni-app中如何判断环境 ?
A: 查看uni-app环境判断文档

Q: uni-app H5端能集成微信支付/即时聊天/七牛云/阿里云吗 ?
A: 关于在 uni-app 内使用第三方 sdk 的问题。如果第三方 sdk 有提供小程序版,可以直接使用,一般多端都兼容。如果有 js 版本可以在 h5 端使用,如果有原生 sdk,可以离线打包自己集成。

Q: uni里可以引入jquery/zepto 吗?
A: 因为 uni-app 不能操作 dom 和 bom ,所以不支持引入。

Q: 标题栏的按钮不能自定义返回到指定tabBar吗?
A: App 端是可以的,如果是原生的导航栏配置了 buttons,可以监听 onNavigationBarButtonTap 函数,去进行跳转页面的操作。

Q: 打开弹窗蒙版之后,下面的页面还可以滚动,怎么不让下面的内容滚动啊?
A: 若需要禁止蒙版下的页面滚动,可使用 @touchmove.stop.prevent="moveHandle",moveHandle 可以用来处理 touchmove 的事件,也可以是一个空函数。

Q: 我每次改完代码,cmd + s ,就会重启项目到根目录,有没有其他优化方案啊?
A: 在HBuilderX工具栏中选择 运行 --> 运行到手机或模拟器/运行到小程序模拟起 --> 选择运行到页面 ,配置相应的页面参数即可。

Q: 我使用了sass/less/stylus,怎么控制台报错啊?
A: 在HBuilderX工具栏中选择 工具 --> 插件安装 --> 安装需要使用的预编译插件。 成功后重新编译项目,就可以愉快的使用了。

Q: uni-app能获取某个view的高度么?怎么弄呢?给点建议呀?
A: 虽然 uni-app 不支持操作 Dom 和 Bom,但是uni-app提供了节点操作,可以获取元素的节点信息。查看文档

重要BUG修复

优秀插件分享

更多插件,请前往 插件市场 查看。

欢迎大家给 uni-app 开源项目(https://github.com/dcloudio/uni-app) 点 star。

结束

本期周报就到这里,感谢大家的阅读。新的一周,祝大家工作顺利。

Dcloud

继续阅读 »

HBuilderX 已正式发布 1.5.0 版本,本次有以下几个重要更新:

  • 新增 typescript 在vue里内联使用
  • 为加快调试速度,运行到微信小程序时取消代码压缩。正式发布,需点击发行菜单操作
  • 减小编译器体积,精简依赖文件
  • 支持字体及背景图片使用本地资源(编译器自动将其编译为base64方式,要求大小在40k以内)
  • less/scss/stylus/ts 等预编译语言支持条件编译 详情
  • 支持通过 process.env.NODE_ENV 进行运行环境判断,并提供快捷代码块uEnvDev、uEnvProd,详情
  • App平台 新增 TabBar 相关 API:setTabBarItem、setTabBarStyle、hideTabBar、showTabBar
  • H5平台 新增 组件:cover-view、cover-image
  • H5平台 优化 image 组件支持浏览器中的长按识别

详细更新日志请见:更新日志

问题清单

Q: uni-app打包成h5,怎么设置不同页面显示不同的标题啊?
A: 在 h5 平台,js 是不受限制的,可以直接使用 document.title = xxx。

Q: nvue真机上onNavigationBarButtonTap无效
A: .vue 和 .nvue 的 onNavigationBarButtonTap 处理有所不同,参照:nvue onNavigationBarButtonTap

Q: uni-app app端 map上显示点位详情
A: 这个问题在于不同平台规范的差异。cover-view

  • 5+App中 cover-view、cover-image 中不支持嵌套其它组件。
  • 5+App中暂不支持 cover-view、cover-image 组件之间的嵌套。
  • 其他小程序平台下,可以使用条件编译,完全按照其规范开发。

Q: uniapp的tabBar可以自定义样式吗?
A: 受限于平台差异,目前仅可以修改 tababr 图标、文字、选中前后颜色、角标等。

Q: 在uni-app中是否不支持after之类的伪类?
A: uni-app 目前提供的选择器支持

Q: 请问 uniapp 可以设置状态栏吗
A: 在 App端 可以使用 5+Api 进行相关的修改。 状态栏修改

Q: input聚焦后,弹出软键盘,又自动关闭,什么原因?
A: 如果想在显示 input 后自动聚焦的话,我们可以使用 v-if 并动态给 focus 属性赋值为 true。

Q: 平时12px的应该怎么换算upx,字体在uni用什么单位比较好,用px会不会有什么影响?
A: uni-app 使用 upx 作为默认尺寸单位,upx 是相对于基准宽度的单位,可以根据屏幕宽度进行自适应。查看upx文档

Q: uni-app有没有长按复制
A: 在 uni-app 中只有 text 组件支持长按选中的功能。查看text组件文档

Q: 登录后获取到用户数据,跳转到指定的页面没有刷新,要手工刷新页面。有什么办法可以跳转到页面并刷新吗?
A: uni-app 中是没有重新加载页面和刷新页面的概念的。如果想要实现以上功能,我们一般会使用 vuex,或者在onShow中去处理数据,重新渲染数据。

Q: 在uni-app中如何判断环境 ?
A: 查看uni-app环境判断文档

Q: uni-app H5端能集成微信支付/即时聊天/七牛云/阿里云吗 ?
A: 关于在 uni-app 内使用第三方 sdk 的问题。如果第三方 sdk 有提供小程序版,可以直接使用,一般多端都兼容。如果有 js 版本可以在 h5 端使用,如果有原生 sdk,可以离线打包自己集成。

Q: uni里可以引入jquery/zepto 吗?
A: 因为 uni-app 不能操作 dom 和 bom ,所以不支持引入。

Q: 标题栏的按钮不能自定义返回到指定tabBar吗?
A: App 端是可以的,如果是原生的导航栏配置了 buttons,可以监听 onNavigationBarButtonTap 函数,去进行跳转页面的操作。

Q: 打开弹窗蒙版之后,下面的页面还可以滚动,怎么不让下面的内容滚动啊?
A: 若需要禁止蒙版下的页面滚动,可使用 @touchmove.stop.prevent="moveHandle",moveHandle 可以用来处理 touchmove 的事件,也可以是一个空函数。

Q: 我每次改完代码,cmd + s ,就会重启项目到根目录,有没有其他优化方案啊?
A: 在HBuilderX工具栏中选择 运行 --> 运行到手机或模拟器/运行到小程序模拟起 --> 选择运行到页面 ,配置相应的页面参数即可。

Q: 我使用了sass/less/stylus,怎么控制台报错啊?
A: 在HBuilderX工具栏中选择 工具 --> 插件安装 --> 安装需要使用的预编译插件。 成功后重新编译项目,就可以愉快的使用了。

Q: uni-app能获取某个view的高度么?怎么弄呢?给点建议呀?
A: 虽然 uni-app 不支持操作 Dom 和 Bom,但是uni-app提供了节点操作,可以获取元素的节点信息。查看文档

重要BUG修复

优秀插件分享

更多插件,请前往 插件市场 查看。

欢迎大家给 uni-app 开源项目(https://github.com/dcloudio/uni-app) 点 star。

结束

本期周报就到这里,感谢大家的阅读。新的一周,祝大家工作顺利。

Dcloud

收起阅读 »

现在的vivo市场真的是乌烟瘴气,好的应用不让上架,投钱的骗子应用可以上架

前几天用Hbuilder开发了一个应用,考试信息类的。愣说我是简单网页打包,真是无语了。傻X一样的审核员。

下面是vivo市场干的好事 ,从别的地方看的帖子。不知真假

vivo应用商店上架无牌无证app,导致我损失25万元
1.本人为vivo手机用户,vivo手机上自带一个vivo应用商店,商店里有各类app可供下载。我本人在vivo商店里下载了一款名叫《免费小说宝典》的app,此app为多款网络赌博游戏打广告,在阅读小说时无意碰触到广告,自动下载完成了网络赌博游戏(之前以为普通棋牌游戏),诱导我损失25万元。
2.我向vivo官方反映后,告知我查询不到此app的任何后台信息,我要求再次调查。后,我向vivo客服咨询,告知我已经把它下架。因为之前反映的时候,我提过要求vivo官方先行赔付,所以,vivo官方前后没有对我任何通知就把此app匆忙下架。后来一个自称客服主管的工作人员告知我我提供的小说名称有误,这完全是装疯卖傻。因为,我之前与一个客服联系的时候我就告诉她,在vivo应用商店搜索时是一个名字,进入这个小说阅读器后就叫《免费小说宝典》。后期,经过我与在线客服3个小时的对话,客服给了我一个人的姓名与联系方式,让我自行联系,说是软件商。我想问问vivo官方,你们已经把app匆忙下架,你让我怎么联系?
3.请看以下附图,在我投诉举报后,在这款小说app上下载游戏,会显示“未经vivo安全认证,请谨慎安装”提示,可之前没投诉之前根本没有此类提示,这说明了以前下载的游戏都是经过了vivo官方认证!
4.一个app需要在vivo上架所需要的条件:
首先你要注册各大应用商店的开发者账户,注册公司主体的需要一个邮箱、一个qq号、一个手机号、营业执照、税务登记证、组织机构代码(三证合一的只需要营业执照)、企业法人身份证正反面、法人手持身份证照片。

然后你要准备icon、市场截图、各个不同渠道名的包、市场说明、新版本说明、一句话介绍、应用关键词标签、软著权等各种资质。

一般来讲,应用都要申请软著权,没有软著权也可以上线百度、360、应用宝、魅族,但是不能加官,不能申请首发之类的。

所以一般可以申请软著权的还是申请一个。一般找渠道的话,10个工作日内办完2200,5个工作日3000。

除此之外,一些应用还会有一些其他的资质要求。比如影视类应用需要《信息网络传播视听节目许可证》,小说类的需要《中华人民共和国出版物经营许可证》。
4.vivo官方居然说后台部门查询不到,这怎么可能?vivo公司作为一个具有巨大社会影响力的公司居然这般无赖!店大欺客不外如是!不积极处理用户问题还推卸责任!

继续阅读 »

前几天用Hbuilder开发了一个应用,考试信息类的。愣说我是简单网页打包,真是无语了。傻X一样的审核员。

下面是vivo市场干的好事 ,从别的地方看的帖子。不知真假

vivo应用商店上架无牌无证app,导致我损失25万元
1.本人为vivo手机用户,vivo手机上自带一个vivo应用商店,商店里有各类app可供下载。我本人在vivo商店里下载了一款名叫《免费小说宝典》的app,此app为多款网络赌博游戏打广告,在阅读小说时无意碰触到广告,自动下载完成了网络赌博游戏(之前以为普通棋牌游戏),诱导我损失25万元。
2.我向vivo官方反映后,告知我查询不到此app的任何后台信息,我要求再次调查。后,我向vivo客服咨询,告知我已经把它下架。因为之前反映的时候,我提过要求vivo官方先行赔付,所以,vivo官方前后没有对我任何通知就把此app匆忙下架。后来一个自称客服主管的工作人员告知我我提供的小说名称有误,这完全是装疯卖傻。因为,我之前与一个客服联系的时候我就告诉她,在vivo应用商店搜索时是一个名字,进入这个小说阅读器后就叫《免费小说宝典》。后期,经过我与在线客服3个小时的对话,客服给了我一个人的姓名与联系方式,让我自行联系,说是软件商。我想问问vivo官方,你们已经把app匆忙下架,你让我怎么联系?
3.请看以下附图,在我投诉举报后,在这款小说app上下载游戏,会显示“未经vivo安全认证,请谨慎安装”提示,可之前没投诉之前根本没有此类提示,这说明了以前下载的游戏都是经过了vivo官方认证!
4.一个app需要在vivo上架所需要的条件:
首先你要注册各大应用商店的开发者账户,注册公司主体的需要一个邮箱、一个qq号、一个手机号、营业执照、税务登记证、组织机构代码(三证合一的只需要营业执照)、企业法人身份证正反面、法人手持身份证照片。

然后你要准备icon、市场截图、各个不同渠道名的包、市场说明、新版本说明、一句话介绍、应用关键词标签、软著权等各种资质。

一般来讲,应用都要申请软著权,没有软著权也可以上线百度、360、应用宝、魅族,但是不能加官,不能申请首发之类的。

所以一般可以申请软著权的还是申请一个。一般找渠道的话,10个工作日内办完2200,5个工作日3000。

除此之外,一些应用还会有一些其他的资质要求。比如影视类应用需要《信息网络传播视听节目许可证》,小说类的需要《中华人民共和国出版物经营许可证》。
4.vivo官方居然说后台部门查询不到,这怎么可能?vivo公司作为一个具有巨大社会影响力的公司居然这般无赖!店大欺客不外如是!不积极处理用户问题还推卸责任!

收起阅读 »

HBuilderX运行到iOS模拟器功能限制

模拟器 iOS

在iOS上模拟器和真机使用不同的CPU架构,而部分第三方SDK没有包含模拟器或者对模拟器兼容不好,导致部分功能无法在模拟器上正常运行,目前已知无法在模拟上使用以下功能:

讯飞语音识别

由于讯飞语音识别在最新版本XCode编译后无法兼容iOS8.x模拟器,所以HBuilderX(从1.5.0版本开始)默认的模拟器基座不再包含讯飞语音识别功能。如果要使用讯飞语音识别功能请使用真机体验。

直播推流(LivePusher)

直播推流功能是基于又拍云的推流SDK实现,目前又拍云的SDK不支持模拟器版本,所以HBuilder|HBuilderX中的模拟器基座无法运行直播推流功能,请使用真机运行体验此功能。

继续阅读 »

在iOS上模拟器和真机使用不同的CPU架构,而部分第三方SDK没有包含模拟器或者对模拟器兼容不好,导致部分功能无法在模拟器上正常运行,目前已知无法在模拟上使用以下功能:

讯飞语音识别

由于讯飞语音识别在最新版本XCode编译后无法兼容iOS8.x模拟器,所以HBuilderX(从1.5.0版本开始)默认的模拟器基座不再包含讯飞语音识别功能。如果要使用讯飞语音识别功能请使用真机体验。

直播推流(LivePusher)

直播推流功能是基于又拍云的推流SDK实现,目前又拍云的SDK不支持模拟器版本,所以HBuilder|HBuilderX中的模拟器基座无法运行直播推流功能,请使用真机运行体验此功能。

收起阅读 »

动态加载的switch开关,为什么无效,没法滑动?已解决分享给大家

最近刚好自己的项目也遇到这个问题,没有看到实际的案例,今天我把自己的分享给大家,希望大家少走弯路

最近刚好自己的项目也遇到这个问题,没有看到实际的案例,今天我把自己的分享给大家,希望大家少走弯路