从零到一开发个人app,并上架应用商店

文章目录

  • 摘要
  • 上架详情
  • 优化细节
    • 图片水印
    • 打卡页面
    • 其他
  • 辅助方法
    • 昵称base64编码
    • 阿里上传图片
  • 结语

摘要

四月的时候发过一篇文章,用十五天开发出了一款打卡app,但是当时只是有了基础的功能,页面和功能都没优化,软著也没申请下来。不过最近一切工作都已经做好了,已经上架啦!!当前已经上架应用宝和华为应用市场。欢迎体验下载,名字叫做——21天习惯打卡

上架详情

我感觉我p的图还是非常好看哒,哈哈哈哈不接受任何反驳
从零到一开发个人app,并上架应用商店_第1张图片

优化细节

图片水印

因为涉及到用户自主分享的图片,所以图片一定要加上作者的水印,当然也可以选择不加,需要用户自己在设置中选择不添加水印(目前此功能还没上线)。
从零到一开发个人app,并上架应用商店_第2张图片
就像上面这样还加了一个小图片,蛮可爱哒,hhh。
我的处理方法比较low,因为是用了阿里云的对象存储,所以就直接调用了阿里云图片处理的功能。
csdn的图片也是用的这种处理方式呢。

public List<ShowImage> showImagesAddwatermark(String url,String name){
        List<ShowImage>tupians=new ArrayList<ShowImage>();
        String[] strArr = url.split("\\;");
        for (int i=0;i<strArr.length;i++) {
            ShowImage tp=new ShowImage();
            String watermarkurl=strArr[i]+"?x-oss-process=image/resize,p_50/watermark,image_bG9nby9sb2dvMi5wbmc_eC1vc3MtcHJvY2Vzcz1pbWFnZS9yZXNpemUsd18yMCxoXzIw,type_d3F5LXplbmhlaQ,size_20,text_"+textBase64.textBase64(name)+",color_FFFFFF,shadow_50,t_100,g_se,x_10,y_10";
            tp.setUrl(watermarkurl);
            tupians.add(tp);
        }
        return tupians;
    }

打卡页面

打卡页面优化。之前如果打卡内容为空的话,则随机选择一句名言当作打卡内容。
优化之后,打卡内容为连续打卡天数。同时在打卡的时候还加上了是否记录打卡地点的选项。
同时,还加了打卡,笔记的区分标签。做出来的效果是这样的
从零到一开发个人app,并上架应用商店_第3张图片

其他

其他还优化了很多内容,就不一一展示了。重要的几个优化就是创建圈子,更改头像。因为防止恶意创建圈子所以加上了创建限制,按照打卡等级规定可创建的个数。还有修改头像也是根据打卡等级来修改的。
页面优化主要就是优化了一下会员页面的展示。为了上架同时加上了用户协议,隐私协议等内容。

辅助方法

昵称base64编码

因为图片水印需要加上base64编码才能被识别显示。所以就把base64编码专门放到了一个方法中。

public String textBase64(String name){
        String result=null;
        name=" @"+name;
        try{
            byte[] encodeBase64 = Base64.encodeBase64URLSafe(name.getBytes("UTF-8"));
            result=new String(encodeBase64);
        } catch(UnsupportedEncodingException e){
            e.printStackTrace();
        }
        return result;
    }

阿里上传图片

接口接受图片之后上传到阿里云的方法

public String uploadImageToOSS(String fileName, InputStream inputStream) {
        OSS ossClient = new OSSClientBuilder().build(endpoint, accessKeyId, accessKeySecret);
//        OSSClient ossClient = new OSSClient(endpoint, accessKeyId, accessKeySecret);
        try {
            String uuid = UUID.randomUUID().toString().replaceAll("-", "");
            String[] names = fileName.split("[.]");
            String name = uuid + "." + names[names.length - 1];
            ossClient.putObject(new PutObjectRequest(bucketName, folder + name, inputStream));
            return key + folder + name;
        } catch (Exception e) {
            e.printStackTrace();
            System.err.println(e.getMessage());
        } finally {
            ossClient.shutdown();
        }
        return null;
    }

结语

从零到一的一次尝试,从来没有发布过应用,也没有对一个项目优化过这么长时间。而且竟然还成功上架到了应用商店。嘿嘿嘿,对自己还是比较满意的。加油!未来可期嘛!!

你可能感兴趣的:(JAVA,数据库,服务器)