HBuilderX

HBuilderX

极客开发工具
uni-app

uni-app

开发一次,多端覆盖
uniCloud

uniCloud

云开发平台
HTML5+

HTML5+

增强HTML5的功能体验
MUI

MUI

上万Star的前端框架

企业找郑州app开发之前需要做什么

5 App开发

  在企业看到app软件的开发市场需求这么大的情况下,已经有很多企业在做了,但是对于企业客户来说,郑州app开发燚轩科技认为在寻找开发公司之前需要先了解市场上具体的实际需求,然后要有目的的开发才是最为重要的。

  总的来说,开发一款app应用并没有人多人想象中的那么困难,只要在开发app应用的前期做好市场调研,明确了用户的需求,然后制定详细的开发方案,在开发时就可以完全按照开发方案去执行,这样中途就不会出现方向性的问题,开发进度就会顺畅很多了。郑州app开发制作燚轩科技认为,以下两个问题是企业在开发app应用过程中,自身必须要了解和确定的。

  首先需要了解app应用制作的流程。了解用户的需求之后,接下来就是了解app应用的开发流程具体是什么样的。一般的app应用的制作流程主要分为以下几步:前期沟意见通、需求评估、app应用软件规划、UI规划、视觉设计、前端制作、技术开发、app应用测试、上传应用市场、完成交付等。按照事前规划好的步骤做事,不仅可以节省开发时间,还能预料到在制作app应用过程中可能出现问题,事先做好防范和准备应对问题的到来。另外,明确了制作app应用软件的流程,还能及时跟进开发进度。

  其次需要了解app应用用户的需求。俗话说,有需求才有供应,有需求才会有生产的动力。首先,制作一个app应用软件,要和传统的产品开发一样,先做好市场的调查,明白用户的需求,然后在对策划出产品,接着生产、推向市场、销售。app应用的开发是先通过对消费者需求的调查,了解消费者希望市面上出现一款什么样的app应用软件,然后根据调查的结果,形成自己的想法,最后再研发推广。这也叫做好app应用的市场定位。

  而那些认为开发app应用是一件困难重重的人,基本上都是前期规划不到位,或是对app应用开发流程不清楚的,由于没有系统的规划,开发工作就很盲目,没有方向,这样去制作app应用,自然就变得非常困难了。

  在移动互联网时代,app应用已经成为了企业的标配,如果说哪个企业还没有选择app开发,都不好意思出去见人了。可见开发app应用的企业非常多,但是,真正了解app应用开发的却非常少,大部分企业对app应用开发都不甚理解。虽然企业可以选择专业的外包公司来进行开发,但是自身至少对app应用的开发流程和步骤有个大概的了解,这样才能令app的开发工作流程更加清晰,效率更加高。本文由郑州app开发整理发布,如需转载请注明出处!

继续阅读 »

  在企业看到app软件的开发市场需求这么大的情况下,已经有很多企业在做了,但是对于企业客户来说,郑州app开发燚轩科技认为在寻找开发公司之前需要先了解市场上具体的实际需求,然后要有目的的开发才是最为重要的。

  总的来说,开发一款app应用并没有人多人想象中的那么困难,只要在开发app应用的前期做好市场调研,明确了用户的需求,然后制定详细的开发方案,在开发时就可以完全按照开发方案去执行,这样中途就不会出现方向性的问题,开发进度就会顺畅很多了。郑州app开发制作燚轩科技认为,以下两个问题是企业在开发app应用过程中,自身必须要了解和确定的。

  首先需要了解app应用制作的流程。了解用户的需求之后,接下来就是了解app应用的开发流程具体是什么样的。一般的app应用的制作流程主要分为以下几步:前期沟意见通、需求评估、app应用软件规划、UI规划、视觉设计、前端制作、技术开发、app应用测试、上传应用市场、完成交付等。按照事前规划好的步骤做事,不仅可以节省开发时间,还能预料到在制作app应用过程中可能出现问题,事先做好防范和准备应对问题的到来。另外,明确了制作app应用软件的流程,还能及时跟进开发进度。

  其次需要了解app应用用户的需求。俗话说,有需求才有供应,有需求才会有生产的动力。首先,制作一个app应用软件,要和传统的产品开发一样,先做好市场的调查,明白用户的需求,然后在对策划出产品,接着生产、推向市场、销售。app应用的开发是先通过对消费者需求的调查,了解消费者希望市面上出现一款什么样的app应用软件,然后根据调查的结果,形成自己的想法,最后再研发推广。这也叫做好app应用的市场定位。

  而那些认为开发app应用是一件困难重重的人,基本上都是前期规划不到位,或是对app应用开发流程不清楚的,由于没有系统的规划,开发工作就很盲目,没有方向,这样去制作app应用,自然就变得非常困难了。

  在移动互联网时代,app应用已经成为了企业的标配,如果说哪个企业还没有选择app开发,都不好意思出去见人了。可见开发app应用的企业非常多,但是,真正了解app应用开发的却非常少,大部分企业对app应用开发都不甚理解。虽然企业可以选择专业的外包公司来进行开发,但是自身至少对app应用的开发流程和步骤有个大概的了解,这样才能令app的开发工作流程更加清晰,效率更加高。本文由郑州app开发整理发布,如需转载请注明出处!

收起阅读 »

周报(20180323):快应用来了,你准备好了么?

清单 周报

热门话题

本周最热门话题非“快应用”莫属。

  • 快应用正式发布:3月20日,中国大饭店,国内10家手机厂商(小米、华为、oppo、vivo、魅族、金立、中兴、努比亚、联想、一加),正式宣布成立快应用联盟,推出快应用。快应用是基于手机硬件平台的新型应用形态,标准是由主流手机厂商组成的快应用联盟联合制定。
  • 快应用深度解读 – 来自内行的门道分析:如果说微信小程序是移动互联网下半场的开幕,那么快应用就是坐实移动互联网下半场方向的重要里程碑。。
  • 想快速开发快应用?你需要知道这4大神器:拥有快应用IDE、小程序转换器、原生打包平台、Uni统计这4大神器,你在动态App浪潮中,才能敏捷前行,迅速把握机会。
  • HBuilderX重大更新,支持快应用、UniApp,支持MAC版:经过不懈努力,HBuilderX 迎来首次重大更新。更新的主要内容有:支持快应用、UniApp 开发,以及大家期待已久的 MAC 版。
  • DCloud 广告联盟引入新合作伙伴:DCloud 广告平台引入了新的开屏广告合作伙伴, 可以为用户提供更精准, 更丰富的开屏广告内容, 同时也可以更好地提升开发者收入。使用 HBuilder IDE 重新提交云端打包即可使用新版广告系统,欢迎体验。

开源项目

  • quickapp:这里是DCloud为快应用提供的工具服务集锦,包括开发IDE、源码示例、新手教程等。
  • 统一转换器:统一转换器,可实现将小程序项目转换为快应用、UniApp项目。
  • UniApp:完美的跨平台App,兼容小程序、快应用。

问题清单

iOS 近期问题

由于苹果的规范限制,iOS 应用总会不定时冒出来各种问题,令开发人员头疼不已。

最后

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

祝大家周末愉快。

继续阅读 »

热门话题

本周最热门话题非“快应用”莫属。

  • 快应用正式发布:3月20日,中国大饭店,国内10家手机厂商(小米、华为、oppo、vivo、魅族、金立、中兴、努比亚、联想、一加),正式宣布成立快应用联盟,推出快应用。快应用是基于手机硬件平台的新型应用形态,标准是由主流手机厂商组成的快应用联盟联合制定。
  • 快应用深度解读 – 来自内行的门道分析:如果说微信小程序是移动互联网下半场的开幕,那么快应用就是坐实移动互联网下半场方向的重要里程碑。。
  • 想快速开发快应用?你需要知道这4大神器:拥有快应用IDE、小程序转换器、原生打包平台、Uni统计这4大神器,你在动态App浪潮中,才能敏捷前行,迅速把握机会。
  • HBuilderX重大更新,支持快应用、UniApp,支持MAC版:经过不懈努力,HBuilderX 迎来首次重大更新。更新的主要内容有:支持快应用、UniApp 开发,以及大家期待已久的 MAC 版。
  • DCloud 广告联盟引入新合作伙伴:DCloud 广告平台引入了新的开屏广告合作伙伴, 可以为用户提供更精准, 更丰富的开屏广告内容, 同时也可以更好地提升开发者收入。使用 HBuilder IDE 重新提交云端打包即可使用新版广告系统,欢迎体验。

开源项目

  • quickapp:这里是DCloud为快应用提供的工具服务集锦,包括开发IDE、源码示例、新手教程等。
  • 统一转换器:统一转换器,可实现将小程序项目转换为快应用、UniApp项目。
  • UniApp:完美的跨平台App,兼容小程序、快应用。

问题清单

iOS 近期问题

由于苹果的规范限制,iOS 应用总会不定时冒出来各种问题,令开发人员头疼不已。

最后

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

祝大家周末愉快。

收起阅读 »

团购型app软件的设计内容要注意什么,郑州app开发怎么样

  说起团购app那么很多人都知道它的优势在于价格便宜,因此这也是团购app软件受到大多数与用户喜爱的原因之一,但是在制作一款团购类型的app软件时,应该注意到哪些问题呢?郑州app开发公司都能够实现哪些功能呢?对于大多数投资者心中的疑问,那么下面燚轩科技就来为大家解答一下。

  1、团购app不能忽视图片

  我们都清楚,一款用于商业用途的手机团购app开发,最吸引消费者的就是商品的图片了,所以设计师在布局团购软件时不能忽视图片的重要性。当然,在当今的快节奏为主的生活时代,人们其实并没有多余的时间去详细阅读应用的文字,所以在设计上使用图片更有利于吸引消费者的眼球。可以说在手机团购app开发设计中使用美观的图片是一件强有力的工具。

  2、极富具创意的手机团购app开发设计

  对于团购app来说,庞大的用户数量是其成功的基础,因此在团购app开发时,要在设计当中加入更多的创意来让你开发的团购软件区别于应用商店里的同类质产品,为团购手机软件加入更多的创意让其变得新颖,可以增加产品的竞争优势。

  3、简单的团购app开发界面设计

  极简的界面设计风潮一直都没有过去,在现在仍旧是设计行业的潮流趋势。而因为极简设计主义的流行,也让许多的app设计师在为更简洁干净的设计而奋斗,因为极简的设计界面风格让用户更容易消化理解团购app开发的内容,也更为的突出手机团购app开发的主要内容。在当代,复杂花俏的设计方式不利于用户在屏幕尺寸过小的手机进行阅读和查看。

  以上就是关于团购app的讲解了,如果有想要了解app开发技术相关知识的投资者,也可以咨询专业的郑州app开发公司燚轩科技来了解,我们会给您一份满意的答复。本文由郑州app开发http://www.appsaa.com整理发布,如需转载请注明出处!

继续阅读 »

  说起团购app那么很多人都知道它的优势在于价格便宜,因此这也是团购app软件受到大多数与用户喜爱的原因之一,但是在制作一款团购类型的app软件时,应该注意到哪些问题呢?郑州app开发公司都能够实现哪些功能呢?对于大多数投资者心中的疑问,那么下面燚轩科技就来为大家解答一下。

  1、团购app不能忽视图片

  我们都清楚,一款用于商业用途的手机团购app开发,最吸引消费者的就是商品的图片了,所以设计师在布局团购软件时不能忽视图片的重要性。当然,在当今的快节奏为主的生活时代,人们其实并没有多余的时间去详细阅读应用的文字,所以在设计上使用图片更有利于吸引消费者的眼球。可以说在手机团购app开发设计中使用美观的图片是一件强有力的工具。

  2、极富具创意的手机团购app开发设计

  对于团购app来说,庞大的用户数量是其成功的基础,因此在团购app开发时,要在设计当中加入更多的创意来让你开发的团购软件区别于应用商店里的同类质产品,为团购手机软件加入更多的创意让其变得新颖,可以增加产品的竞争优势。

  3、简单的团购app开发界面设计

  极简的界面设计风潮一直都没有过去,在现在仍旧是设计行业的潮流趋势。而因为极简设计主义的流行,也让许多的app设计师在为更简洁干净的设计而奋斗,因为极简的设计界面风格让用户更容易消化理解团购app开发的内容,也更为的突出手机团购app开发的主要内容。在当代,复杂花俏的设计方式不利于用户在屏幕尺寸过小的手机进行阅读和查看。

  以上就是关于团购app的讲解了,如果有想要了解app开发技术相关知识的投资者,也可以咨询专业的郑州app开发公司燚轩科技来了解,我们会给您一份满意的答复。本文由郑州app开发http://www.appsaa.com整理发布,如需转载请注明出处!

收起阅读 »

上下滚动反映不良mui('.mui-scroll-wrapper').scroll();

mui('.mui-scroll-wrapper').scroll();
上下滚动反映不良,完全没有丝滑的感觉,一卡卡的
http://m3w.cn/zgss 医道 神农本草经 下拉部分的 上下滚动

mui('.mui-scroll-wrapper').scroll();
上下滚动反映不良,完全没有丝滑的感觉,一卡卡的
http://m3w.cn/zgss 医道 神农本草经 下拉部分的 上下滚动

wap2app项目分享

分享 wap2app 案例

接触wap2app已经有小半年了,对w2a的一步步的发展还算有些了解。下边分享的是利用w2a编写的一个app移动项目。
APP名称:每日一券
目前已经实现的功能:
dom隐藏(隐藏移动端下载dom);
原生分享;
引导页(初次安装展示);
下拉刷新;
APP内更新安装;
个推推送;
清理缓存(5+方法,因为APP更新时apk会储存到目录内,所以加了这个功能,用的是plus.io.resolveLocalFileSystemURL方法,即清掉下载文件的目录达到清理的目的);
nview模板暂未使用,(由于移动站需要不定时更改样式,暂时没加入)。

APP预览地址:ios下载
安卓下载

继续阅读 »

接触wap2app已经有小半年了,对w2a的一步步的发展还算有些了解。下边分享的是利用w2a编写的一个app移动项目。
APP名称:每日一券
目前已经实现的功能:
dom隐藏(隐藏移动端下载dom);
原生分享;
引导页(初次安装展示);
下拉刷新;
APP内更新安装;
个推推送;
清理缓存(5+方法,因为APP更新时apk会储存到目录内,所以加了这个功能,用的是plus.io.resolveLocalFileSystemURL方法,即清掉下载文件的目录达到清理的目的);
nview模板暂未使用,(由于移动站需要不定时更改样式,暂时没加入)。

APP预览地址:ios下载
安卓下载

收起阅读 »

蓝牙打印机打印二维码

蓝牙连接打印借鉴

var OutputStreamWriter = plus.android.importClass("java.io.OutputStreamWriter");  
//mac_address 蓝牙地址  
//byteStr 二维码内容  
function PrintQrCode(mac_address,byteStr) {  
    if (!mac_address) {  
        mui.toast('请选择蓝牙打印机');  
        return;  
    }  

    main = plus.android.runtimeMainActivity();  
    BluetoothAdapter = plus.android.importClass("android.bluetooth.BluetoothAdapter");  
    UUID = plus.android.importClass("java.util.UUID");  
    uuid = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");  
    BAdapter = BluetoothAdapter.getDefaultAdapter();  
    device = BAdapter.getRemoteDevice(mac_address);  
    plus.android.importClass(device);  
    bluetoothSocket = device.createInsecureRfcommSocketToServiceRecord(uuid);  
    plus.android.importClass(bluetoothSocket);  

    if (!bluetoothSocket.isConnected()) {  
        console.log('检测到设备未连接,尝试连接....');  
        bluetoothSocket.connect();  
    }  

    console.log('设备已连接');  

    if (bluetoothSocket.isConnected()) {  
      var outputStream = bluetoothSocket.getOutputStream();  
      plus.android.importClass(outputStream);  
      var writer = new OutputStreamWriter(outputStream, 'GBK');   
      plus.android.importClass(writer);  

      //init  
      writer.write(0x1B);  
      writer.write(0x40);  
      writer.flush();  

      var moduleSize = 8;  
      var bytes = plus.android.invoke(byteStr, 'getBytes', 'gbk');  
      var length = bytes.length;  

      console.log(length);  
      //打印二维码矩阵    
      writer.write(0x1D);// init    
      writer.write("(k");// adjust height of barcode    
      writer.write(length + 3); // pl    
      writer.write(0); // ph    
      writer.write(49); // cn    
      writer.write(80); // fn    
      writer.write(48); //    
      writer.write(byteStr);  

      writer.write(0x1D);  
      writer.write("(k");  
      writer.write(3);  
      writer.write(0);  
      writer.write(49);  
      writer.write(69);  
      writer.write(48);  

      writer.write(0x1D);  
      writer.write("(k");  
      writer.write(3);  
      writer.write(0);  
      writer.write(49);  
      writer.write(67);  
      writer.write(moduleSize);  

      writer.write(0x1D);  
      writer.write("(k");  
      writer.write(3); // pl    
      writer.write(0); // ph    
      writer.write(49); // cn    
      writer.write(81); // fn    
      writer.write(48); // m    

      writer.flush();   
    }  
}
继续阅读 »

蓝牙连接打印借鉴

var OutputStreamWriter = plus.android.importClass("java.io.OutputStreamWriter");  
//mac_address 蓝牙地址  
//byteStr 二维码内容  
function PrintQrCode(mac_address,byteStr) {  
    if (!mac_address) {  
        mui.toast('请选择蓝牙打印机');  
        return;  
    }  

    main = plus.android.runtimeMainActivity();  
    BluetoothAdapter = plus.android.importClass("android.bluetooth.BluetoothAdapter");  
    UUID = plus.android.importClass("java.util.UUID");  
    uuid = UUID.fromString("00001101-0000-1000-8000-00805F9B34FB");  
    BAdapter = BluetoothAdapter.getDefaultAdapter();  
    device = BAdapter.getRemoteDevice(mac_address);  
    plus.android.importClass(device);  
    bluetoothSocket = device.createInsecureRfcommSocketToServiceRecord(uuid);  
    plus.android.importClass(bluetoothSocket);  

    if (!bluetoothSocket.isConnected()) {  
        console.log('检测到设备未连接,尝试连接....');  
        bluetoothSocket.connect();  
    }  

    console.log('设备已连接');  

    if (bluetoothSocket.isConnected()) {  
      var outputStream = bluetoothSocket.getOutputStream();  
      plus.android.importClass(outputStream);  
      var writer = new OutputStreamWriter(outputStream, 'GBK');   
      plus.android.importClass(writer);  

      //init  
      writer.write(0x1B);  
      writer.write(0x40);  
      writer.flush();  

      var moduleSize = 8;  
      var bytes = plus.android.invoke(byteStr, 'getBytes', 'gbk');  
      var length = bytes.length;  

      console.log(length);  
      //打印二维码矩阵    
      writer.write(0x1D);// init    
      writer.write("(k");// adjust height of barcode    
      writer.write(length + 3); // pl    
      writer.write(0); // ph    
      writer.write(49); // cn    
      writer.write(80); // fn    
      writer.write(48); //    
      writer.write(byteStr);  

      writer.write(0x1D);  
      writer.write("(k");  
      writer.write(3);  
      writer.write(0);  
      writer.write(49);  
      writer.write(69);  
      writer.write(48);  

      writer.write(0x1D);  
      writer.write("(k");  
      writer.write(3);  
      writer.write(0);  
      writer.write(49);  
      writer.write(67);  
      writer.write(moduleSize);  

      writer.write(0x1D);  
      writer.write("(k");  
      writer.write(3); // pl    
      writer.write(0); // ph    
      writer.write(49); // cn    
      writer.write(81); // fn    
      writer.write(48); // m    

      writer.flush();   
    }  
}
收起阅读 »

HBuilderX Mac版本发布!快速上手一览

macos high sierra Mac版 HBuilderX

随着快应用的发布,经过一天的等待。凌晨终于HBuilderX 发布了Mac alpha版本,版本号为 0.1.23.20180320-alpha.full 。第一时间下载体验!目前这也是市面上唯一的快应用开发IDE工具。

下载地址:HBuilderX 下载地址 下面为体验截图



界面一如既往对清爽养眼。在这里分享下第一次打开时可能会遇到的问题。
在macOS Sierra下,由于系统的安全机制问题。对部分应用首次打开时可能会出现下面的情况。(目前HBuilderX还在alpha版本,首次安装可能会出现这个问题)


解决办法:在 Finder 的应用程序目录(/Application)中找到 HBuilderX 的应用程序。(一定要用 Finder,不要用 Launchpad 操作,Launchpad 不允许访问快捷菜单) 按住 Control 键点按应用图标,然后从快捷键菜单中选取“打开”。


这时候系统会对程序进行验证,之后在弹出对提示框中点按“打开”。


然后,开始你的 HBuilderX 体验之旅吧!

继续阅读 »

随着快应用的发布,经过一天的等待。凌晨终于HBuilderX 发布了Mac alpha版本,版本号为 0.1.23.20180320-alpha.full 。第一时间下载体验!目前这也是市面上唯一的快应用开发IDE工具。

下载地址:HBuilderX 下载地址 下面为体验截图



界面一如既往对清爽养眼。在这里分享下第一次打开时可能会遇到的问题。
在macOS Sierra下,由于系统的安全机制问题。对部分应用首次打开时可能会出现下面的情况。(目前HBuilderX还在alpha版本,首次安装可能会出现这个问题)


解决办法:在 Finder 的应用程序目录(/Application)中找到 HBuilderX 的应用程序。(一定要用 Finder,不要用 Launchpad 操作,Launchpad 不允许访问快捷菜单) 按住 Control 键点按应用图标,然后从快捷键菜单中选取“打开”。


这时候系统会对程序进行验证,之后在弹出对提示框中点按“打开”。


然后,开始你的 HBuilderX 体验之旅吧!

收起阅读 »

小程序转快应用教程

转换器 小程序 快应用

本文已过期。推荐将小程序先转换为uni-app项目,详情;然后从uni-app编译为快应用,详情

==============================以下为过期内容========================

如果你已经有了一款微信小程序,从头重新开发快应用比较累。
利用HBuilderX可以快速将小程序代码转化快应用代码。

源码转换

打开HBuilderX,新建项目,选快应用,在右下角会出现从小程序导入按钮,然后选择小程序的源码目录。


如果没有提示安装转换插件的话,也可以先在菜单工具-插件安装里安装uni-migration插件,然后再点导入。

注意:如果你的项目里使用了预处理器比如less,请选择编译处理后的工程。

转换结束后,简单对比一下项目的结构。

开发调试

真机运行
HBuilderX可以直接真机运行快应用项目,菜单->运行->真机运行->选择设备,或者直接点击工具栏的“真机运行”按钮。

Debug调试
Debug调试的话,菜单->运行->Debug调试->选择设备,调试服务器启动后会自动打开Chrome网页。

打包发布

应用开发完成,同样可以通过HBuilderX进行打包和发布。
菜单->发行->快应用发行->生成rpk文件。

从快应用的unpackage目录下,获取到RPK应用包后,前往快应用官网发布即可。

使用注意

  1. 各种方式编写的代码很难完美兼容,如遇到转换器、编译器bug,请到如下地址提交issues,或直接完善这个开源产品:
    http://github.com/dcloudio/uni-migration
  2. 推荐先在微信小程序中把布局改为flex布局,然后再转换。因为快应用只支持flex布局。
  3. 推荐先在微信小程序中把目录结构改为一个目录下面一个同名页面,这样方便转换快应用。

转换更多是临时方案,长期维护转换的代码是不合适的。
请开发者多关注uni-app,重新开发一套多端代码,实现复用和统一升级。

继续阅读 »

本文已过期。推荐将小程序先转换为uni-app项目,详情;然后从uni-app编译为快应用,详情

==============================以下为过期内容========================

如果你已经有了一款微信小程序,从头重新开发快应用比较累。
利用HBuilderX可以快速将小程序代码转化快应用代码。

源码转换

打开HBuilderX,新建项目,选快应用,在右下角会出现从小程序导入按钮,然后选择小程序的源码目录。


如果没有提示安装转换插件的话,也可以先在菜单工具-插件安装里安装uni-migration插件,然后再点导入。

注意:如果你的项目里使用了预处理器比如less,请选择编译处理后的工程。

转换结束后,简单对比一下项目的结构。

开发调试

真机运行
HBuilderX可以直接真机运行快应用项目,菜单->运行->真机运行->选择设备,或者直接点击工具栏的“真机运行”按钮。

Debug调试
Debug调试的话,菜单->运行->Debug调试->选择设备,调试服务器启动后会自动打开Chrome网页。

打包发布

应用开发完成,同样可以通过HBuilderX进行打包和发布。
菜单->发行->快应用发行->生成rpk文件。

从快应用的unpackage目录下,获取到RPK应用包后,前往快应用官网发布即可。

使用注意

  1. 各种方式编写的代码很难完美兼容,如遇到转换器、编译器bug,请到如下地址提交issues,或直接完善这个开源产品:
    http://github.com/dcloudio/uni-migration
  2. 推荐先在微信小程序中把布局改为flex布局,然后再转换。因为快应用只支持flex布局。
  3. 推荐先在微信小程序中把目录结构改为一个目录下面一个同名页面,这样方便转换快应用。

转换更多是临时方案,长期维护转换的代码是不合适的。
请开发者多关注uni-app,重新开发一套多端代码,实现复用和统一升级。

收起阅读 »

如何自定义加载页面时的等待图标设置成动态图 (waiting中的loading中的icon)

等待框 showWaiting loading

打开页面时,加载中的提示的文字和图片都是可以自定义的,今天试了一下,其实很简单的东西弄了有一会,分享一下希望大家少走弯路吧。

为了方便测试,看到效果,我是直接调用的h5+的API,正常使用是在mui

plus.nativeUI.showWaiting('处理中,请等待...', {loading:{icon:"/images/loading.png"}});

其实这个很简单,看文档就知道了,而且问答中都有提到。

关键是这个图片的设置,官方是要求的PNG格式的图片。

这个动态图的实现原理是,代码会自动根据图片的高度,横向截取图片,也就是说,首先你的图标需要是一个正方形的图标,然后你要把你的动态图片弄成一张一张逐帧的形式,无缝拼接成一张横着的png图片,就可以啦。

像这样

搞定!

继续阅读 »

打开页面时,加载中的提示的文字和图片都是可以自定义的,今天试了一下,其实很简单的东西弄了有一会,分享一下希望大家少走弯路吧。

为了方便测试,看到效果,我是直接调用的h5+的API,正常使用是在mui

plus.nativeUI.showWaiting('处理中,请等待...', {loading:{icon:"/images/loading.png"}});

其实这个很简单,看文档就知道了,而且问答中都有提到。

关键是这个图片的设置,官方是要求的PNG格式的图片。

这个动态图的实现原理是,代码会自动根据图片的高度,横向截取图片,也就是说,首先你的图标需要是一个正方形的图标,然后你要把你的动态图片弄成一张一张逐帧的形式,无缝拼接成一张横着的png图片,就可以啦。

像这样

搞定!

收起阅读 »

做一个商城app能赚钱吗?郑州app开发讲解盈利模式

5 App开发

  对于一个购物的app软件来投资者除了担心多久能够制作出来这个问题之外,最关注的一个点应该是可以从哪些方面获取盈利,其实对于这个问题,专业的郑州app开发制作公司就从三个方面来告诉大家一下,其实不管是商城类的还是团购类的app,都是基于这三个方面来获取盈利的。

  1、传统的成交费

  这是团购平台最基本的一项服务,但与国外的团购网站又不尽相同,国外一般是自己向商家进货,然后负责把商品卖出去,赚取其中的差价,就是直销。而美团APP的盈利不同的是,它基本上只充当组织者的作用,然后收取交易的佣金,听起来似乎这样的钱赚得更加轻松。

  2、vip会员卡

  这种模式将会是未来很多团购平台采取的一种盈利方式,以会员的等级差别来决定能够得到的折扣大小。虽然会员卡的盈利不会很多,也不会成为主要的盈利方式,它最主要的功能是什么呢?对了,吸引了更多的买家,从而加快了成交费的增长,一举两得!

  3、广告收入

  有些商品可能并不适合以团购的方式进行交易,但很可能与团购的商品有一定的相关性,所以把这些商品放在移动平台的时候能起到非常好的促销作用。而且可以针对不同地区的人群放置不同的广告,这样也提高了用户的便利性。

  那么以上这些就是郑州app开发公司为各位介绍的,关于购物类的app软件具体都可以从哪些点盈利了,不过还需要告诉大家一点的是,在选择郑州app开发的时候,不能单一的根据价格或者某一元素选择,应该多方面考察一下该公司,然后在进行合作,如果想要了解专业app开发技术的话,可以咨询郑州燚轩科技。本文由郑州app开发http://www.appsaa.com整理编辑,如需转载请注明出处。

继续阅读 »

  对于一个购物的app软件来投资者除了担心多久能够制作出来这个问题之外,最关注的一个点应该是可以从哪些方面获取盈利,其实对于这个问题,专业的郑州app开发制作公司就从三个方面来告诉大家一下,其实不管是商城类的还是团购类的app,都是基于这三个方面来获取盈利的。

  1、传统的成交费

  这是团购平台最基本的一项服务,但与国外的团购网站又不尽相同,国外一般是自己向商家进货,然后负责把商品卖出去,赚取其中的差价,就是直销。而美团APP的盈利不同的是,它基本上只充当组织者的作用,然后收取交易的佣金,听起来似乎这样的钱赚得更加轻松。

  2、vip会员卡

  这种模式将会是未来很多团购平台采取的一种盈利方式,以会员的等级差别来决定能够得到的折扣大小。虽然会员卡的盈利不会很多,也不会成为主要的盈利方式,它最主要的功能是什么呢?对了,吸引了更多的买家,从而加快了成交费的增长,一举两得!

  3、广告收入

  有些商品可能并不适合以团购的方式进行交易,但很可能与团购的商品有一定的相关性,所以把这些商品放在移动平台的时候能起到非常好的促销作用。而且可以针对不同地区的人群放置不同的广告,这样也提高了用户的便利性。

  那么以上这些就是郑州app开发公司为各位介绍的,关于购物类的app软件具体都可以从哪些点盈利了,不过还需要告诉大家一点的是,在选择郑州app开发的时候,不能单一的根据价格或者某一元素选择,应该多方面考察一下该公司,然后在进行合作,如果想要了解专业app开发技术的话,可以咨询郑州燚轩科技。本文由郑州app开发http://www.appsaa.com整理编辑,如需转载请注明出处。

收起阅读 »

js获取URL中参数值(QueryString)的方法

matchurls

在做页面跳转传参的时候有时候需要处理传过来的参数进行匹配数据,可以通过以下几种方法来解决
一,正则法:
这个方法只要一搜索到处都是,比较简单;

function getQueryString (name) {  
    var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)','i');  
    var r = window.location.search.substr(1).match(reg);  
    if (r != null) {  
        return unescape(r[2]);  
    }  
    return null;  
}  
//调用  
getQueryString ("参数名");

这种方法中的 【unescape】在MDN中已经被废弃,建议用decodeURI或者decodeURIComponent来替代本方法。
语法:unescape(str) 参数:str为被编码过的字符串,返回值:一个未被转义的新字符串。
decodeURI(encodedURI);参数encodedURI:一个完整的编码过的URI

decodeURI("https://developer.mozilla.org/ru/docs/JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B");  
// "https://developer.mozilla.org/ru/docs/JavaScript_шеллы"  
//捕捉异常  

try{  
    var a = decodeURI('%E0%A4%A');  
}catch(e){  
    console.error(e);  
}  
// URIError: malformed URI sequence

二:split拆分法
var strs;
function GetRequest () {
var url = location.search;//获取url中“?”符后的字符串
var theRequest = new Object();
if (url.indexOf('?') != -1) {
var str = url.substr(1);
strs = str.split('&');
for (var i = 0;i < strs.length; i++) {
theRequest[strs[i].split('=')[0]] = decodeURI(str[i].split(('=')[1]);
}
}
return theRequest;
}
var Request = new Object();
Request = GetRequest();
Request['参数1'];

继续阅读 »

在做页面跳转传参的时候有时候需要处理传过来的参数进行匹配数据,可以通过以下几种方法来解决
一,正则法:
这个方法只要一搜索到处都是,比较简单;

function getQueryString (name) {  
    var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)','i');  
    var r = window.location.search.substr(1).match(reg);  
    if (r != null) {  
        return unescape(r[2]);  
    }  
    return null;  
}  
//调用  
getQueryString ("参数名");

这种方法中的 【unescape】在MDN中已经被废弃,建议用decodeURI或者decodeURIComponent来替代本方法。
语法:unescape(str) 参数:str为被编码过的字符串,返回值:一个未被转义的新字符串。
decodeURI(encodedURI);参数encodedURI:一个完整的编码过的URI

decodeURI("https://developer.mozilla.org/ru/docs/JavaScript_%D1%88%D0%B5%D0%BB%D0%BB%D1%8B");  
// "https://developer.mozilla.org/ru/docs/JavaScript_шеллы"  
//捕捉异常  

try{  
    var a = decodeURI('%E0%A4%A');  
}catch(e){  
    console.error(e);  
}  
// URIError: malformed URI sequence

二:split拆分法
var strs;
function GetRequest () {
var url = location.search;//获取url中“?”符后的字符串
var theRequest = new Object();
if (url.indexOf('?') != -1) {
var str = url.substr(1);
strs = str.split('&');
for (var i = 0;i < strs.length; i++) {
theRequest[strs[i].split('=')[0]] = decodeURI(str[i].split(('=')[1]);
}
}
return theRequest;
}
var Request = new Object();
Request = GetRequest();
Request['参数1'];

收起阅读 »