HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

MUI跨域请求失败问题解决

跨域请求 mui

很多人在使用ajax请求的时候会出现跨域请求失败的问题。查了很多,大部分人都是在怪MUI的ajax太垃圾了,在MUI各种改动使得让他支持跨域请求,但是均失败了。后来看到有人说是后台的问题,我尝试了一下!果然解决!所以,这里分享一下经验给后来者。因为每个人的后台用的框架不一样,但是解决思路肯定都是对的!解决的思路很简单:让后台支持跨域请求。这是后台的改动,自行根据自己的框架百度解决~

继续阅读 »

很多人在使用ajax请求的时候会出现跨域请求失败的问题。查了很多,大部分人都是在怪MUI的ajax太垃圾了,在MUI各种改动使得让他支持跨域请求,但是均失败了。后来看到有人说是后台的问题,我尝试了一下!果然解决!所以,这里分享一下经验给后来者。因为每个人的后台用的框架不一样,但是解决思路肯定都是对的!解决的思路很简单:让后台支持跨域请求。这是后台的改动,自行根据自己的框架百度解决~

收起阅读 »

法院判决:APICloud侵权DCloud事实成立,赔付DCloud共计184.48万元并公开道歉!

侵权 APICloud

时隔3年,经历了APICloud提管辖异议等各种拖延手段,日前北京知识产权法院就APICloud抄袭HBuilder源代码,侵害计算机软著作权一案做出判决:APICloud侵权事实成立,赔偿DCloud损失及诉讼支出共计164.48万元,并公开道歉。

加上之前已宣判的不正当竞争案的20万,APICloud累计应向DCloud赔付184.48万元损失及诉讼支出,并公开向DCloud道歉

2015年DCloud提起诉讼时,APICloud各种狡辩和混淆视听:
或谎称有内鬼、或狡辩HBuilder本该开源,代码抄袭无妨。
其全然没有认知到反编译和抄袭HBuilder代码对DCloud造成的伤害,全然没有认知到自己违法的严重性,反而持续欺瞒自己的合作伙伴和用户。

在判决的那一刻,所有的谎言被揭穿,APICloud原形毕露,诚信荡然无存。
所有曾误信APICloud的人,被更深的伤害。
做错事固然不对,但做错后不承担责任却试图狡辩和欺骗,更是错上加错。最后又输官司又输人。
当然,APICloud还可能继续狡辩,甚至宣称冤案继续上诉,那就更无药可救了。
【更新:APICloud果然在官方声明里继续狡辩,避重就轻,颠倒是非,拒不认错。其已无药可救。
其过去的历次官方声明,早因谎话连篇,法律系统证伪后,被专业人士鄙视。本次声明又重蹈覆辙,把故意破解抄袭粉饰为管理疏忽、把不道歉的理由还甩锅给DCloud、把侵权影响范围说的无比小、又搬出早已被法院否决的GPL问题。。。套路太多,毫无诚信,小白都不能让你反复欺骗了。其即使上诉,这个官方声明将再次给主审法官留下恶劣印象】

算上APICloud自己的法务支出,这是一个超过200万的教训。值得所有创业公司警醒:

  1. 创业者不要信奉野蛮生长就破解和抄袭别人代码,这是犯法,而且代价惨重。
  2. 投资人尽调要重点考察创始人的诚信和业务原罪。
  3. 犯一个错后,要赶紧弥补、担当责任。如果试图瞒天过海、欺瞒用户和舆论,你就犯了第二个错。最终把自己推向万劫不复的深渊。

本案的宣判,是对遵纪守法、自主创新者的保护,是对目无法纪、抄袭创新、犯错还颠倒是非的恶人的打击。
传播这样的案例,有助于净化中国的创业环境。
希望大家传播和伸张正义!联合抵制这种毫无道德的公司!

附:
DCloud诉APICloud的案件,依据不同的案由被分为侵权案和不正当竞争2个案子。以下是2个案件的判决书扫描件:

1. 侵权案一审判决


2. 不正当竞争案一审判决


后记:
之前APICloud曾污蔑DCloud“产品比不过,就靠打官司”,我们就不再起诉诽谤了。把今年一季度的百度指数附上,各位自己看,在多词分流的情况下,DCloud的体量仍然大过APICloud多少倍。实际上mui的百度指数和react native相近,HBuilder的百度指数和sublime相近。


不是说DCloud已经多么完善了,我们也仍在路上。
但对与错、是与非,不能含糊。
纵容apicloud的人,不止是破坏中国的知识产权保护环境,其实也是你们把apicloud推向深渊。
纵容让apicloud没有彻底反思,发展到今年这般田地;纵容让创新者和正义方寒心;纵容让自己和合作伙伴和客户受到伤害!

近期中兴被封事情沸沸扬扬,但中国为什么没有底层创新?
CSDN首页头条及公众号刊载了DCloud CEO王安的文章:为什么中国的底层创新做不起来?
保护中国的知识产权环境,人人有责!

继续阅读 »

时隔3年,经历了APICloud提管辖异议等各种拖延手段,日前北京知识产权法院就APICloud抄袭HBuilder源代码,侵害计算机软著作权一案做出判决:APICloud侵权事实成立,赔偿DCloud损失及诉讼支出共计164.48万元,并公开道歉。

加上之前已宣判的不正当竞争案的20万,APICloud累计应向DCloud赔付184.48万元损失及诉讼支出,并公开向DCloud道歉

2015年DCloud提起诉讼时,APICloud各种狡辩和混淆视听:
或谎称有内鬼、或狡辩HBuilder本该开源,代码抄袭无妨。
其全然没有认知到反编译和抄袭HBuilder代码对DCloud造成的伤害,全然没有认知到自己违法的严重性,反而持续欺瞒自己的合作伙伴和用户。

在判决的那一刻,所有的谎言被揭穿,APICloud原形毕露,诚信荡然无存。
所有曾误信APICloud的人,被更深的伤害。
做错事固然不对,但做错后不承担责任却试图狡辩和欺骗,更是错上加错。最后又输官司又输人。
当然,APICloud还可能继续狡辩,甚至宣称冤案继续上诉,那就更无药可救了。
【更新:APICloud果然在官方声明里继续狡辩,避重就轻,颠倒是非,拒不认错。其已无药可救。
其过去的历次官方声明,早因谎话连篇,法律系统证伪后,被专业人士鄙视。本次声明又重蹈覆辙,把故意破解抄袭粉饰为管理疏忽、把不道歉的理由还甩锅给DCloud、把侵权影响范围说的无比小、又搬出早已被法院否决的GPL问题。。。套路太多,毫无诚信,小白都不能让你反复欺骗了。其即使上诉,这个官方声明将再次给主审法官留下恶劣印象】

算上APICloud自己的法务支出,这是一个超过200万的教训。值得所有创业公司警醒:

  1. 创业者不要信奉野蛮生长就破解和抄袭别人代码,这是犯法,而且代价惨重。
  2. 投资人尽调要重点考察创始人的诚信和业务原罪。
  3. 犯一个错后,要赶紧弥补、担当责任。如果试图瞒天过海、欺瞒用户和舆论,你就犯了第二个错。最终把自己推向万劫不复的深渊。

本案的宣判,是对遵纪守法、自主创新者的保护,是对目无法纪、抄袭创新、犯错还颠倒是非的恶人的打击。
传播这样的案例,有助于净化中国的创业环境。
希望大家传播和伸张正义!联合抵制这种毫无道德的公司!

附:
DCloud诉APICloud的案件,依据不同的案由被分为侵权案和不正当竞争2个案子。以下是2个案件的判决书扫描件:

1. 侵权案一审判决


2. 不正当竞争案一审判决


后记:
之前APICloud曾污蔑DCloud“产品比不过,就靠打官司”,我们就不再起诉诽谤了。把今年一季度的百度指数附上,各位自己看,在多词分流的情况下,DCloud的体量仍然大过APICloud多少倍。实际上mui的百度指数和react native相近,HBuilder的百度指数和sublime相近。


不是说DCloud已经多么完善了,我们也仍在路上。
但对与错、是与非,不能含糊。
纵容apicloud的人,不止是破坏中国的知识产权保护环境,其实也是你们把apicloud推向深渊。
纵容让apicloud没有彻底反思,发展到今年这般田地;纵容让创新者和正义方寒心;纵容让自己和合作伙伴和客户受到伤害!

近期中兴被封事情沸沸扬扬,但中国为什么没有底层创新?
CSDN首页头条及公众号刊载了DCloud CEO王安的文章:为什么中国的底层创新做不起来?
保护中国的知识产权环境,人人有责!

收起阅读 »

使用新版本5+SDK创建最简Android原生工程(Android studio)

5+sdk Android

新版离线sdk文档已发布,离线打包请参考最新文档

<!--

1 使用Android Studio创建一个工程

2 删除原生工程中Java目录下系统默认创建的源代码

3 复制SDK->libs->lib.5plus.base-release.aar文件到原生工程工程的app->libs目录下

4 打开工程的build.gradle文件


4.1 添加aar文件引用到dependenciesr如下代码

compile(name: 'lib.5plus.base-release', ext: 'aar')  

4.2 添加aar文件搜索路径添到gradle文件,与dependencies同级, 代码如下

repositories {  
    flatDir {  
        dirs 'libs'  
    }  
}  


4.3修改工程的targetSdkVersion大于等于21

5 打开工程的Androidmanifest.xml文件,复制以下内容替换该文件中原有application节点下的内容

<application  
    android:name="io.dcloud.application.DCloudApplication"  
    android:allowClearUserData="true"  
    android:icon="@drawable/icon"  
    android:label="@string/app_name"  
    android:largeHeap="true"  
    >  
    <activity  
        android:name="io.dcloud.PandoraEntry"  
        android:configChanges="orientation|keyboardHidden|keyboard|navigation"  
        android:label="@string/app_name"  
        android:launchMode="singleTask"  
        android:hardwareAccelerated="true"  
        android:theme="@style/TranslucentTheme"  
        android:screenOrientation="user"  
        android:windowSoftInputMode="adjustResize" >  
        <intent-filter>  
            <action android:name="android.intent.action.MAIN" />  

            <category android:name="android.intent.category.LAUNCHER" />  
        </intent-filter>  
    </activity>  
</application>  

6 在app->src->res->drawble目录下放应用的图标文件文件命名为icon.png

7 复制SDK->assets->data目录和目录下的文件到工程的src->main->assets目录下,新创建的工程默认没有assets目录,可在与java同级目录下创建assets目录

8 Assets目录下创建apps目录,复制应用资源到apps目录下。 注意: 应用资源的路径为[appid]->www, appid为应用资源manifest.json文件中id节点的值

HBuilderX支持导出本地打包资源,参考:HBilderX生成本地打包App资源


9 修改assets->data->dcloud_control.xml文件的apps->app->appid属性的值改为当前应用manifest.json文件id节点的值

离线SDK下载

新版本5+ SDK对功能和资源进行了整合,按照文档配置好工程后支持大部分的5+API,除OAuth,Share,Push,Statistic,Payment,Speech,Maps等需要使用第三方SDK的5+API,如需使用以上几个功能则需要针对插件单独配置文档链接如下

Android平台离线打包分享插件配置

Android平台离线打包授权登陆插件配置

Android平台离线打包地图插件配置

Android平台离线打包定位插件配置

Android平台离线打包支付插件配置

Android平台离线打包推送插件配置

Android平台离线打包语音插件配置

-->

继续阅读 »

新版离线sdk文档已发布,离线打包请参考最新文档

<!--

1 使用Android Studio创建一个工程

2 删除原生工程中Java目录下系统默认创建的源代码

3 复制SDK->libs->lib.5plus.base-release.aar文件到原生工程工程的app->libs目录下

4 打开工程的build.gradle文件


4.1 添加aar文件引用到dependenciesr如下代码

compile(name: 'lib.5plus.base-release', ext: 'aar')  

4.2 添加aar文件搜索路径添到gradle文件,与dependencies同级, 代码如下

repositories {  
    flatDir {  
        dirs 'libs'  
    }  
}  


4.3修改工程的targetSdkVersion大于等于21

5 打开工程的Androidmanifest.xml文件,复制以下内容替换该文件中原有application节点下的内容

<application  
    android:name="io.dcloud.application.DCloudApplication"  
    android:allowClearUserData="true"  
    android:icon="@drawable/icon"  
    android:label="@string/app_name"  
    android:largeHeap="true"  
    >  
    <activity  
        android:name="io.dcloud.PandoraEntry"  
        android:configChanges="orientation|keyboardHidden|keyboard|navigation"  
        android:label="@string/app_name"  
        android:launchMode="singleTask"  
        android:hardwareAccelerated="true"  
        android:theme="@style/TranslucentTheme"  
        android:screenOrientation="user"  
        android:windowSoftInputMode="adjustResize" >  
        <intent-filter>  
            <action android:name="android.intent.action.MAIN" />  

            <category android:name="android.intent.category.LAUNCHER" />  
        </intent-filter>  
    </activity>  
</application>  

6 在app->src->res->drawble目录下放应用的图标文件文件命名为icon.png

7 复制SDK->assets->data目录和目录下的文件到工程的src->main->assets目录下,新创建的工程默认没有assets目录,可在与java同级目录下创建assets目录

8 Assets目录下创建apps目录,复制应用资源到apps目录下。 注意: 应用资源的路径为[appid]->www, appid为应用资源manifest.json文件中id节点的值

HBuilderX支持导出本地打包资源,参考:HBilderX生成本地打包App资源


9 修改assets->data->dcloud_control.xml文件的apps->app->appid属性的值改为当前应用manifest.json文件id节点的值

离线SDK下载

新版本5+ SDK对功能和资源进行了整合,按照文档配置好工程后支持大部分的5+API,除OAuth,Share,Push,Statistic,Payment,Speech,Maps等需要使用第三方SDK的5+API,如需使用以上几个功能则需要针对插件单独配置文档链接如下

Android平台离线打包分享插件配置

Android平台离线打包授权登陆插件配置

Android平台离线打包地图插件配置

Android平台离线打包定位插件配置

Android平台离线打包支付插件配置

Android平台离线打包推送插件配置

Android平台离线打包语音插件配置

-->

收起阅读 »

手机普通浏览器端webview模拟实现,可与app统一代码

html5plus HTML5+ 浏览器 mui Webview

mui-plus-webview

一个基于mui的网页端模拟webview拓展

模拟触发了plusReady事件

主要利用iframe,对webview进行模拟

以及一些mui.js中使用到的plus方法/属性的模拟

demo地址

  • 真实项目地址

    • 某网站手机版
    • ios下载地址,
    • 安卓下载地址,
    • 开始写项目的时候不会vue,
    • 快写完项目会vue了,但是打算离职了,
    • 没什么时间用vue统一布局代码或者重新开发一套web版了,
    • 所以用iframe模拟实现了浏览器端的webview,
    • 另外,重点说明上面的平台pc版不是我写的,
    • 我到那家公司的时候,pc版就已经开发完了
    • (因为pc版的代码实在是太...所以,我必须要澄清下)
    • (不知道pc版网址是什么的话,当我没说上面的话)
  • demo地址

适用场景

  • 开始是app代码,没时间转换为浏览器端代码的

  • 需要在浏览器端查看webview效果的

  • 其实不太建议在手机端使用iframe

使用方法

  • 在入口页面引入./js/plus.js文件即可

注意事项

  • 需要引入mui.js,mui.css

    (js方面是因为使用了mui.extend,mui.type,mui.slice等方法)

    (css方面是因为使用了mui的mask等样式)

  • ios的web端使用此库时,会把iframe的html,body,.mui-content的高度设置为100%

  • ifrme容器的z-index的基数为500

    (设置"webview"的zindex其实是设置iframe容器的z-index)

    (但是设置样式的配置按照plus的文档来就好,有相关代码进行转换)

实现功能

见README.md说明

其他plus代码模拟实现

见README.md说明

添加的mui方法

mui.prop_attr


  // 设置或返回目标元素的"自带/自定义"属性值。  
  // 最后一个参数接受的是target  
  // 使用name设置或获取属性  
  // 获取属性:  
  var someAttr = mui.prop_attr('data-attrname', document.body);  
  var bodyId = mui.prop_attr('id', document.body);  
  // 设置属性:  
  mui.prop_attr('data-attrname', 'someValue', document.body)  
  mui.prop_attr('id', 'content', document.body)  
  mui.prop_attr('className', 'mui-hidden', document.body)  
  // 使用object设置属性:  
  mui.prop_attr({  
    'data-attrname':'someValue',  
    id:'content',  
    className:'mui-hidden mui-ios',  
  }, document.body);  

可参考jQuery的attr/prop文档

gitHub地址

说了这么多,干货终于来了

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

相信你不会吝啬你的小星星对吧

继续阅读 »

mui-plus-webview

一个基于mui的网页端模拟webview拓展

模拟触发了plusReady事件

主要利用iframe,对webview进行模拟

以及一些mui.js中使用到的plus方法/属性的模拟

demo地址

  • 真实项目地址

    • 某网站手机版
    • ios下载地址,
    • 安卓下载地址,
    • 开始写项目的时候不会vue,
    • 快写完项目会vue了,但是打算离职了,
    • 没什么时间用vue统一布局代码或者重新开发一套web版了,
    • 所以用iframe模拟实现了浏览器端的webview,
    • 另外,重点说明上面的平台pc版不是我写的,
    • 我到那家公司的时候,pc版就已经开发完了
    • (因为pc版的代码实在是太...所以,我必须要澄清下)
    • (不知道pc版网址是什么的话,当我没说上面的话)
  • demo地址

适用场景

  • 开始是app代码,没时间转换为浏览器端代码的

  • 需要在浏览器端查看webview效果的

  • 其实不太建议在手机端使用iframe

使用方法

  • 在入口页面引入./js/plus.js文件即可

注意事项

  • 需要引入mui.js,mui.css

    (js方面是因为使用了mui.extend,mui.type,mui.slice等方法)

    (css方面是因为使用了mui的mask等样式)

  • ios的web端使用此库时,会把iframe的html,body,.mui-content的高度设置为100%

  • ifrme容器的z-index的基数为500

    (设置"webview"的zindex其实是设置iframe容器的z-index)

    (但是设置样式的配置按照plus的文档来就好,有相关代码进行转换)

实现功能

见README.md说明

其他plus代码模拟实现

见README.md说明

添加的mui方法

mui.prop_attr


  // 设置或返回目标元素的"自带/自定义"属性值。  
  // 最后一个参数接受的是target  
  // 使用name设置或获取属性  
  // 获取属性:  
  var someAttr = mui.prop_attr('data-attrname', document.body);  
  var bodyId = mui.prop_attr('id', document.body);  
  // 设置属性:  
  mui.prop_attr('data-attrname', 'someValue', document.body)  
  mui.prop_attr('id', 'content', document.body)  
  mui.prop_attr('className', 'mui-hidden', document.body)  
  // 使用object设置属性:  
  mui.prop_attr({  
    'data-attrname':'someValue',  
    id:'content',  
    className:'mui-hidden mui-ios',  
  }, document.body);  

可参考jQuery的attr/prop文档

gitHub地址

说了这么多,干货终于来了

↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

相信你不会吝啬你的小星星对吧

收起阅读 »

用MUI写了一个阅读器,包括搜索,阅读,章节,展示,升级等等功能,踩过无数的坑,打算开源出来给新手研究

开源 mui

用MUI写了一个阅读器,包括搜索,阅读,章节,展示,升级等等功能,踩过无数的坑,
打算开源出来给新手研究,希望MUI以后发展的更好一些,后来者少踩一些我遇到的坑。

我是一个.net方向的程序员,js ,css等等前端技术都会,只是用的少,对大部分现在的框架并不熟悉, 之前没有做过app开发。

最近自己一直看小说的app广告大多,源也不好找,无奈下就写了这个app,主要是自娱自乐用的,不做商业用途。

后端就不多解释了,采用的是.net写的一个爬虫来,实时获取数据源,返回给前端接口来调用。

这些天我会慢慢把代码整理出来,发布到github上,希望一个完整的项目给大家一个参考,有问题的话,我也会及时回复。

----------------更新2018年4月17日9:02:54

  • 现在把app发布上来,给大家试玩。之后更新代码
  • GitHub开源地址:
  • https://github.com/zuiyuewentian/Mui_ReadBook
继续阅读 »

用MUI写了一个阅读器,包括搜索,阅读,章节,展示,升级等等功能,踩过无数的坑,
打算开源出来给新手研究,希望MUI以后发展的更好一些,后来者少踩一些我遇到的坑。

我是一个.net方向的程序员,js ,css等等前端技术都会,只是用的少,对大部分现在的框架并不熟悉, 之前没有做过app开发。

最近自己一直看小说的app广告大多,源也不好找,无奈下就写了这个app,主要是自娱自乐用的,不做商业用途。

后端就不多解释了,采用的是.net写的一个爬虫来,实时获取数据源,返回给前端接口来调用。

这些天我会慢慢把代码整理出来,发布到github上,希望一个完整的项目给大家一个参考,有问题的话,我也会及时回复。

----------------更新2018年4月17日9:02:54

  • 现在把app发布上来,给大家试玩。之后更新代码
  • GitHub开源地址:
  • https://github.com/zuiyuewentian/Mui_ReadBook
收起阅读 »

建议 HBuilder 不要再重复造轮子了,开发 PHPStorm/WebStorm 插件

HBuilder

如题“建议 HBuilder 不要再重复造轮子了,开发 PHPStorm/WebStorm 插件”,HBuilder 这个 IDE 在 Mac 上简直烂的不行,卡出翔,我定制最顶配的 iMac 都跑着费劲,不知道怎么想的!WebStorm 性能什么的都十分优秀,为什么不开发一个插件呢?

继续阅读 »

如题“建议 HBuilder 不要再重复造轮子了,开发 PHPStorm/WebStorm 插件”,HBuilder 这个 IDE 在 Mac 上简直烂的不行,卡出翔,我定制最顶配的 iMac 都跑着费劲,不知道怎么想的!WebStorm 性能什么的都十分优秀,为什么不开发一个插件呢?

收起阅读 »

关于原生集成H5+ SDK 软键盘问题分享

布局 原生分享 软键盘

问题描述:
最新在做个项目,需要用到原生一些特性,为了方便控制,所以选择了原生集H5+SDK。集成过程完全参照官方,但集成之后发现个问题,当有输入焦点的时候,弹出的软键盘会直接遮挡输入,这样体验非常不好,开始觉得可能是设置问题,但使用HBuilder官方基座打包,弹出的软键盘是不会出现遮挡的。所以分析,应该跟我们自己的原生部分有关系,所以集中方向就从我们原生代码去解决。
解决方法:
通过网上找资料,可设置 fitsSystemWindows=true 和 android:windowSoftInputMode="adjustResize" ,设置之后是可以终于解决问题了,但是新的问题又来了,你会发现界面顶部默认会多出一个状态栏高度的空隙,看起来非常不爽。
就这个新问题找了很多方法要去掉都不行,觉得自己是不是方向弄错了,最后仔细想了下,其实面对这个问题可以换个方式,去不掉这个留白,但是不是我们让整个界面上移一个状态栏高度,达到解决的目的呢。
最终尝试在root view下添加 android:layout_marginTop="-25dp" ,最后真的解决。 折腾了一个上午终于解决了,很激动。
希望分享这次经验可以帮到遇到同样问题的朋友,同时如果大家还有更好的方式,也请多多分享下,谢谢~

总结:
1、rootview中添加属性 fitsSystemWindows=true
2、 AndroidManifest.xml 中添加 android:windowSoftInputMode="adjustResize"
3、rootview 布局添加 android:layout_marginTop="-25dp"

继续阅读 »

问题描述:
最新在做个项目,需要用到原生一些特性,为了方便控制,所以选择了原生集H5+SDK。集成过程完全参照官方,但集成之后发现个问题,当有输入焦点的时候,弹出的软键盘会直接遮挡输入,这样体验非常不好,开始觉得可能是设置问题,但使用HBuilder官方基座打包,弹出的软键盘是不会出现遮挡的。所以分析,应该跟我们自己的原生部分有关系,所以集中方向就从我们原生代码去解决。
解决方法:
通过网上找资料,可设置 fitsSystemWindows=true 和 android:windowSoftInputMode="adjustResize" ,设置之后是可以终于解决问题了,但是新的问题又来了,你会发现界面顶部默认会多出一个状态栏高度的空隙,看起来非常不爽。
就这个新问题找了很多方法要去掉都不行,觉得自己是不是方向弄错了,最后仔细想了下,其实面对这个问题可以换个方式,去不掉这个留白,但是不是我们让整个界面上移一个状态栏高度,达到解决的目的呢。
最终尝试在root view下添加 android:layout_marginTop="-25dp" ,最后真的解决。 折腾了一个上午终于解决了,很激动。
希望分享这次经验可以帮到遇到同样问题的朋友,同时如果大家还有更好的方式,也请多多分享下,谢谢~

总结:
1、rootview中添加属性 fitsSystemWindows=true
2、 AndroidManifest.xml 中添加 android:windowSoftInputMode="adjustResize"
3、rootview 布局添加 android:layout_marginTop="-25dp"

收起阅读 »

商城app开发时需要制作的功能都有哪些呢

5 App开发

  随着移动商务的迅速发展,很多企业都开始打造属于自己的商城手机app,有了商城app应用软件,能够大大促进产品的销售,让企业获得更多的利润。可以说商城app软件对企业而言是非常重要的。下面郑州app开发燚轩科技就跟大家详细说说商城app开发需要设置哪些功能。

  第一,产品展示。无论是什么类型的商城,最重要的就是能够更好的展示自己企业的产品。这也是商城app开发最核心的部分,把需要出售的产品在app商城一一展示出来,让消费者一目了然,如果有购买意向就进行相关操作。

  第二,在线支付。这是最为关键的商城app开发的功能,有了它,消费者能够随时购买喜欢的产品,企业通过它收到消费者支付的钱款。

  第三,购物车。无论是购买一件产品还是多件产品,只要把想要购买的产品放置到购物车里面就可以一次性下单。也有的消费者先把产品放置到购物车,等到有空闲时间再进行结算,所以购物车功能是必不可少的。

  第四,收藏产品。无论是现在的淘宝商城还是京东商城亦或者是唯品会,他们都有收藏店铺和收藏产品的功能,可以说收藏功能能够方便消费者的下次消费,让消费者通过收藏功能查看自己曾经有意向购买的产品,为消费者提供了便利,也在一定程度上增加了重复购买率。

  第五,查看物流。消费者在下单支付之后,想要了解产品什么时候进行派送,就可以通过查看物流动态了解这些相关信息。

  随着电子商务的不断发展,商城app开发的功能也会越来越完善。对于消费者购物会越来越便利,越来越节省时间。对于企业而言,功能越完善,操作起来越方便,也能够节省大量的精力和时间。本文由郑州app开发http://www.appsaa.com编辑整理,如需转载请注明出处!

继续阅读 »

  随着移动商务的迅速发展,很多企业都开始打造属于自己的商城手机app,有了商城app应用软件,能够大大促进产品的销售,让企业获得更多的利润。可以说商城app软件对企业而言是非常重要的。下面郑州app开发燚轩科技就跟大家详细说说商城app开发需要设置哪些功能。

  第一,产品展示。无论是什么类型的商城,最重要的就是能够更好的展示自己企业的产品。这也是商城app开发最核心的部分,把需要出售的产品在app商城一一展示出来,让消费者一目了然,如果有购买意向就进行相关操作。

  第二,在线支付。这是最为关键的商城app开发的功能,有了它,消费者能够随时购买喜欢的产品,企业通过它收到消费者支付的钱款。

  第三,购物车。无论是购买一件产品还是多件产品,只要把想要购买的产品放置到购物车里面就可以一次性下单。也有的消费者先把产品放置到购物车,等到有空闲时间再进行结算,所以购物车功能是必不可少的。

  第四,收藏产品。无论是现在的淘宝商城还是京东商城亦或者是唯品会,他们都有收藏店铺和收藏产品的功能,可以说收藏功能能够方便消费者的下次消费,让消费者通过收藏功能查看自己曾经有意向购买的产品,为消费者提供了便利,也在一定程度上增加了重复购买率。

  第五,查看物流。消费者在下单支付之后,想要了解产品什么时候进行派送,就可以通过查看物流动态了解这些相关信息。

  随着电子商务的不断发展,商城app开发的功能也会越来越完善。对于消费者购物会越来越便利,越来越节省时间。对于企业而言,功能越完善,操作起来越方便,也能够节省大量的精力和时间。本文由郑州app开发http://www.appsaa.com编辑整理,如需转载请注明出处!

收起阅读 »

周报(20180413):此 App 是否使用广告标识(IDFA)

清单 周报

热门话题

无论是 App Store 还是各大 Android 应用市场,应用上架策略的不断变化,给广大开发者带来不少烦恼。

问题清单

UniApp

招聘

号外

DCloud 官网更新了:https://www.dcloud.io/

最后

本周的动态就是这些,希望能对大家有所帮助。同时,也希望更多的小伙伴在社区分享自己的经验心得,交流学习。

祝大家周末愉快。

继续阅读 »

热门话题

无论是 App Store 还是各大 Android 应用市场,应用上架策略的不断变化,给广大开发者带来不少烦恼。

问题清单

UniApp

招聘

号外

DCloud 官网更新了:https://www.dcloud.io/

最后

本周的动态就是这些,希望能对大家有所帮助。同时,也希望更多的小伙伴在社区分享自己的经验心得,交流学习。

祝大家周末愉快。

收起阅读 »

app制作流程中需要测试吗?还有哪些步骤呢

  对于一款功能完善的app软件来说,那么很多人关注的是它是如何开发制作而来的,虽然说app开发报价可能每一家开发公司给出的参考不一样,但是对于一款完善的app软件来说,大致的开发流程都是一样的,下面就详细跟大家介绍一下,app开发中的流程及内容都是关于哪些方面的,也同时让企业投资者对于app开发能有进一步的认识。

  1、iOS/Android客户端开发

  程序员按照app效果图进行客户端开发,对设计效果图的代码实现,写入功能调用的接口,连接服务器端,方使服务器端的数据进行交互,开发出与效果图一致的app的客户端。

  2、app程序测试

  app的全面测试,此测试是模拟用户在正常使用的情况下以及非正常使用的情况下有可能出现的问题,当然,需要导入必要的数据进行测试,出现错误继续开发修复,通过则证明整体app已经完成,然后再将成品交由用户试用。

  3、上传到应用商店

  完成签名验证之后,开发好的客户端app程序就可以提交发布到各应用商店。iOS版本的app提交到苹果的appStore,安卓的提交到国内各大安卓应用商店。

  4、app的维护及更新

  对上线之后的app进行维护,收集用户反馈信息,及时修复app应用中出现的错误(Bug)。

  那么关于app的开发流程郑州app开发公司燚轩科技就为大讲解到这里了,对于开发一款app软件来说,并不是制作完成就结束了,恰恰相反,app软件的制作完成只是开始,对于企业投资者来说,首先要选择的就是有长久售后技术服务的app开发公司,这样对于以后的运营中出现的问题也好解决了。本文由郑州app开发http://www.appsaa.com整理发布,如需转载请注明出处!

继续阅读 »

  对于一款功能完善的app软件来说,那么很多人关注的是它是如何开发制作而来的,虽然说app开发报价可能每一家开发公司给出的参考不一样,但是对于一款完善的app软件来说,大致的开发流程都是一样的,下面就详细跟大家介绍一下,app开发中的流程及内容都是关于哪些方面的,也同时让企业投资者对于app开发能有进一步的认识。

  1、iOS/Android客户端开发

  程序员按照app效果图进行客户端开发,对设计效果图的代码实现,写入功能调用的接口,连接服务器端,方使服务器端的数据进行交互,开发出与效果图一致的app的客户端。

  2、app程序测试

  app的全面测试,此测试是模拟用户在正常使用的情况下以及非正常使用的情况下有可能出现的问题,当然,需要导入必要的数据进行测试,出现错误继续开发修复,通过则证明整体app已经完成,然后再将成品交由用户试用。

  3、上传到应用商店

  完成签名验证之后,开发好的客户端app程序就可以提交发布到各应用商店。iOS版本的app提交到苹果的appStore,安卓的提交到国内各大安卓应用商店。

  4、app的维护及更新

  对上线之后的app进行维护,收集用户反馈信息,及时修复app应用中出现的错误(Bug)。

  那么关于app的开发流程郑州app开发公司燚轩科技就为大讲解到这里了,对于开发一款app软件来说,并不是制作完成就结束了,恰恰相反,app软件的制作完成只是开始,对于企业投资者来说,首先要选择的就是有长久售后技术服务的app开发公司,这样对于以后的运营中出现的问题也好解决了。本文由郑州app开发http://www.appsaa.com整理发布,如需转载请注明出处!

收起阅读 »

付费求高手解答IAP丢单问题

IAP

如题,就是IAP用户付费过程当中,如果App尚未收到苹果服务器返回的确认信息就退出了,而苹果已经扣钱了,App这边如何处理。
使用HBuider的plus.payment开发。
有酬谢!
qq: 3114330860
谢谢~

如题,就是IAP用户付费过程当中,如果App尚未收到苹果服务器返回的确认信息就退出了,而苹果已经扣钱了,App这边如何处理。
使用HBuider的plus.payment开发。
有酬谢!
qq: 3114330860
谢谢~

拖拽式选项卡功能和上下滑动事件冲突

mui

拖拽式选项卡功能和上下滑动事件冲突有没有遇到这种问题的同僚

拖拽式选项卡功能和上下滑动事件冲突有没有遇到这种问题的同僚