Android Studio开发毕业设计

Android Studio开发毕业设计

今年是令人悲伤的一年,技术不过关的我至今尚未找到工作。在这个过程中,渐渐了解到踏实勤奋的重要性。
仅用作个人记录,并无实际参考意义

毕业选题的时候很迷茫,无所谓的态度选了Android的课题,给自己留了一个大坑,还好虽然不是很精通Java,也半学不学的学了一些,就是刚开始使用Android Studio这个软件的时候很烦人,摸索了好久,可能自己笨吧!到现在模拟器都没有调通,好在可以直接连接真机调试,算是做出了一个可以在手机上运行的APP吧!这个观鸟APP有很多bug以及功能没有完全实现,此博客是为了记录自己的学习过程以及心得。(我怕我再不写这篇博客,我又要把这几个月好死不死学的点东西忘了)

下图是软件的主界面,是用一个activity加四个Fragment实现的,底部的导航栏参考的是https://www.jb51.net/article/81777.htm(可能看着有点复杂,一步步慢慢写下来其实还好,网上有很多参考博客,可以自行选择)。
在写这个导航栏的功能的时候遇到了两个问题:
**1.**每次点击一个新的fragment,数据都会刷新,就比如登录之后,应该显示登录账号的信息,但是这个信息在再次点击fragment页面的时候,会刷新,数据消失。
解决办法:fragment在调用的时候有生命周期问题,不应该重新new一个页面出来,即不应该使用replace方法,而应该使用show和hide方法。
**2.**解决在fragment中不响应onActivityResult()方法
https://blog.csdn.net/sinat_15411661/article/details/100557191

主要实现的功能有:

图一:顶部的轮播图(轮播图的效果没有完全的实现,可以滑动切换图片,定时器实现自动切换图片的功能没有做出来,这个功能是学习的https://blog.csdn.net/zhaoxiaojian1213/article/details/78280132)
下方最新资讯部分是一个ListView列表,和图3的鸟类预览部分是用同样的办法实现的,可以上下滑动。
图二:点击图片访问相册,上传图片(此页面还有很多功能可以做,像下方的数量,时间,地点都应该做出可视化的方式,本人并没有做出来)

	private ImageView mIvImg;
	mIvImg = view.findViewById(R.id.iv_img);
	
//        上传鸟类图片
    mIvImg.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            // 打开系统相册
            Intent intent = new Intent(Intent.ACTION_PICK,null);
            intent.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, "image/*");
            startActivityForResult(intent, 100);
        }
    });
    
    //需要重写onActivityResult方法
	public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        // 获取返回的图片数据
        if(resultCode == Activity.RESULT_OK && requestCode == 100){
            if(data != null){
                // data.getData()就是选择图片的URI
                mIvImg.setImageURI(data.getData());
            }
        }
    }

图三:搜索框(用SearchView来实现的)。参考https://blog.csdn.net/Airsaid/article/details/51087226
图四:登录/注册跳转,数据回传
Android Studio开发毕业设计_第1张图片

登录/注册界面:涉及到数据存储,连接数据库,匹配账号密码。本项目中,使用的是Android Studio自带的SQLite数据库。
本项目中并没有搭建后台服务器,所以数据都是死的,不能实时更新,也没有互动性。只是做了简单的数据的增删查改功能。可参考:https://blog.csdn.net/kururunga/article/details/54024778
Android Studio开发毕业设计_第2张图片
项目的.apk文件安装失败解决办法:
AS2.3升级为3.0之后,改了些配置,然后能够直接通过通过绿色小箭头run到手机上没问题,后来将生成的apk包拷出来之后7.0系统的手机提示安装包损坏,找了好多解决方法,包括6楼所说的签名问题,和自己上面回复的关闭instant run功能等,结果发现都是无法解决的,当时找到instant run马上回复了也没试试抱歉,因为自己刚好确实打开了这个设置项,所以不知道为啥,后来的解决方法是通过右边的Gradle project目录中选中Task/install/install_Debug打包成功apk并安装成功

当时写代码的电脑已废弃,源码没有备份,本文不提供源码,想学习的同学,已在文中标明重要部分的学习链接,按照链接是可以编写完成的,因本人后期未从事android开发,无法提供帮助,仅给各位参考
此文写于2020年5月

你可能感兴趣的:(android,android)