ionic3打包设置二维码下载页

简介: ionic3打包设置二维码下载页

去草料网


制作下需要扫码下载的 二维码图片


加上自己的连接


上传logo


将生成的二维码用PS稍微美化下


加上想要的文字 一般图片大小 1000x1300


签名打包ionic3项目


参考地址


后台服务器项目书写是下载的代码


将app的包放在资源目录下

1dc618a0ed9580ce8bfa6facb208c08f.png

代码

package com.bjtcrj.gms.resource.controller;
import org.apache.commons.io.IOUtils;
import org.springframework.core.io.ResourceLoader;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import javax.annotation.Resource;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
@Controller
@RequestMapping({ "/app" })
public class UploadAppController {
    @Resource
    private ResourceLoader resourceLoader;
    @RequestMapping(value = "/downapp",method = RequestMethod.GET)
    public void downloadFile(HttpServletRequest request, HttpServletResponse response, String type) throws IOException {
        String fileName = "wanggeApp.apk";
        String showName = "智慧网格.apk";
        if ("ios".equalsIgnoreCase(type)) {
            fileName = "wanggeApp.ipa";
            showName = "智慧网格.ipa";
        }
        if (fileName != null) {
            InputStream inputStream = null;
            ServletOutputStream servletOutputStream = null;
            String encodeName = URLEncoder.encode(showName, StandardCharsets.UTF_8.toString());
            try {
                String filePath = File.separator + "appload" + File.separator + fileName;
                org.springframework.core.io.Resource resource = resourceLoader.getResource("classpath:" + filePath);
                response.setContentType("application/force-download");
                response.addHeader("Cache-Control", "no-cache, no-store, must-revalidate");
                response.addHeader("charset", "utf-8");
                response.addHeader("Pragma", "no-cache");
                response.setHeader("Content-Disposition", "attachment; filename*=utf-8''" + encodeName);
//                response.setHeader("Content-Disposition", "attachment; filename=\"" + encodeName + "\"; filename*=utf-8''" + encodeName);
                inputStream = resource.getInputStream();
                servletOutputStream = response.getOutputStream();
                IOUtils.copy(inputStream, servletOutputStream);
                response.flushBuffer();
            } catch (Exception e) {
                System.out.println("应用已暂停下载! ---------------- "+fileName);
                response.setHeader("Content-Disposition", "attachment; filename*=utf-8''" + encodeName);
                response.flushBuffer();
//                String data = "应用已暂停下载!";
//                OutputStream outputStream = response.getOutputStream();
//                response.setHeader("content-type", "text/html;charset=UTF-8");
//                byte[] dataByteArr = data.getBytes("UTF-8");
//                outputStream.write(dataByteArr);
            } finally {
                try {
                    if (inputStream != null) {
                        inputStream.close();
                        inputStream = null;
                    }
                    if (servletOutputStream != null) {
                        try {
                            servletOutputStream.close();
                        }catch (Exception e){
                        }
                        servletOutputStream = null;
                    }
                    // 召唤jvm的垃圾回收器
                    System.gc();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
    }
}


将后台项目部署到二维码网址的服务器路径

最后是测试,打开你的那个二维码图片测试吧


相关文章
|
前端开发
ionic3二维码功能(生成二维码)
生成二维码 方法一:qrcanvas(支持中文) 1. 安装依赖: npm i qrcanvas --save 2. 新建一个组件Component,通过这个组件来提供生成二维码的能力 ionic g component qrcode 3.
2558 0
|
JavaScript 前端开发 Android开发
Ionic 开发中遇到的常见问题及解决方案
Ionic 常见问题及解决方案
8374 0
|
Web App开发 索引
Ionic 2 开发(一)_安装与目录结构
由于公司开始使用后ionic 进行前段开发,现在需要学习下ionic,虽然是后台开发,但是还是有必要了解下的 安装Node.js 官网:http://nodejs.cn/ 自行下载安装 安装Ionic npm install -g cordova npm install -g ionic 设置淘宝镜像 npm config set registry https://registry.
1094 0
|
Web App开发 移动开发 JavaScript
Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App
原文:Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App 安装VS2015 Update2的过程是非常曲折的。还好经过不懈的努力,终于折腾成功了。 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错。
1789 0
|
缓存 JavaScript Android开发
Ionic 1 & 2 开发常见问题 Q&A
原文发表于我的技术博客 本文分享了在 Ionic 1 & 2 版本开发过程中常见问题的一些 Q&A,供慕课网同学或其他朋友参考。原文发表于我的技术博客 1. 版本的问题 Ionic 2 目前属于快速迭代更新的版本,版本的更新会带来如文件结构和少许代码的变更,不过底层还是构建于 Angular 2 ...
1530 0
ionic开发之用户头像修改-图片选择与上传
用户头像修改,图片选择上传,非常常用的功能,本来打算和wap版一样,也用XMLHttpRequest和FormData来处理图片异步上传,结果在手机上测试的时候发现,onload事件没有触发,没找到原因,本来想省点事才不用插件去实现这个功能的,这下看来只能用插件了。
1695 0
|
移动开发 前端开发 JavaScript
【技术干货】前端开发之IONIC移动端开发
Ionic是一套HTML5 Hybrid Mobile应用开发框架,本文给大家介绍的是如何在MAC下搭建Ionic开发平台和开发移动端应用。快点戳进来看看吧~
5999 0
|
前端开发 JavaScript iOS开发
ionic react-native和native开发移动app到底那个好
ionic react-native和native开发移动app那个好 ? 移动端开发如何选型?这里介绍一下我眼中的ionic,react-native,native 三种移动端开发选型对比。欢迎大家补充指正一、 跨平台特性    ionic : write once, run anywhere (...
1202 0
|
JavaScript 开发工具 Python
使用cordova+Ionic+AngularJs进行Hybird App开发的环境搭建手册
一,所需工具       1,JDK:生成     2,安卓SDK开发环境     3,NodeJs:主要使用的还是npm     4,Python开发环境     5,VS 2012(2008,2015也可以,已亲测):安装这个主要是需要一些.net的东西,也没具体查是啥,图个省事。
1481 0