ThankVinci
|
e49885003d
|
1.完成创建dialog,能传入数据,但是由子线程产生的信息还不能更新到主线程的UI上
|
4 years ago |
ThankVinci
|
8fde82cffd
|
1.实现了根目录下再按一次返回键退出APP
2.再次思考完成解压需要做的事情
点击文件,有个按钮直接检测md5值在数据库中有没有数据,有的话填充密码框,密码框可勾选是否明文,还有一个选项是是否上传当前文件的密码,有密码指定目的路径点击解压按钮就可以直接解压
3.改了APP主题
4.添加了一个解压用的dialog,但是要给dialog传入bundle数据不知道从何下手
|
4 years ago |
ThankVinci
|
3f421d1d69
|
添加了implementation group: 'net.lingala.zip4j', name: 'zip4j', version: '2.8.0'这个库用于解压文件
将 FileThread,FileHandler,NetThread,NetHandler四个半成品联系起来获取对应文件在数据库中的密码
数据流向:
主线程(文件路径)-->FileThread(MD5)-->FileHandler(MD5)-->NetThread(pwd)-->NetHandler(pwd)
|
4 years ago |
ThankVinci
|
08c03f4af8
|
完成了子线程中获取md5并发到主线程的功能
|
4 years ago |
ThankVinci
|
d3948d704d
|
实现获取文件md5码的功能,使用到的库是:implementation group: 'commons-codec', name: 'commons-codec', version: '1.15'
|
4 years ago |
ThankVinci
|
d1ceca0205
|
1.将loadRoot和loadDirectory两个方法合并为loadDirectory(),本质上都是加载一个目录
2.发现不管怎么加载都是根目录的内容,随后发现是之前的一个错误想法:在当前的fragment刷新布局,然后原来的布局压栈,虽然找到了navigation的方法,但是为了节约资源将FileAdapter设置为单例模式没有改回来.
|
4 years ago |
ThankVinci
|
899b9ff899
|
之前的log打得跟日记一样
1.感觉先显示文件再显示文件夹还是太丑了,改了回来
2.获取外部存储根目录的由直接给路径改成方法调用获取
3.新建了一个NetCheck类,用于检测当前网络状态,但是具体功能并没有实现
4.实现了fragment之间的跳转和数据的传递,即点击文件夹打开该目录,然后发现空目录会发生空指针异常也一并处理了
fragment的跳转和参考官方文档和https://blog.csdn.net/m0_46962786/article/details/109119746,这篇文章,对nav_graph中的filemanagefragment(简称fm)添加了action和argument
完成了文件管理的功能,然后正在删除一些冗余的代码
|
4 years ago |
ThankVinci
|
63314b320d
|
发现物理机的隐藏文件挺多的,于是设置默认隐藏.开头的隐藏文件,关于file类获取当前目录下的子文件,在Windows上默认按文件名排序,但是在Android里却没有,所以要对文件和文件夹以及名字和文件夹进行排序,考虑到我们可能要优先找文件,所以,文件就显示在文件夹前
|
4 years ago |
ThankVinci
|
aa488274e7
|
决定还是先把核心功能完成了,完成过程中再想想handler怎么搞才合适
在file_manage_fragment使用RecyclerView来作为文件管理器的布局,文件部分要申请本地读写权限,尤其是运行时权限,还要在manifest文件中的<application>标签中android:requestLegacyExternalStorage="true"
**发现当物理机WiFi网络连不上互联网或者没开数据时会闪退,所以要通过广播机制判断当前的网络状态**,之后再改
添加了文件布局
代码参考《第二行代码》中对recyclerview的瀑布流应用,需要创建布局除了放置recyclerview的fragment外还需要一个表示recyclerview子项的file文件布局(图标+文字),图标是请一个熟人帮忙设计的.然后图标pressed状态下有一个遮罩,也是要写一个selector来修改样式,所以同样在colors文件中添加我要使用的颜色
|
4 years ago |
ThankVinci
|
ac26f754af
|
2021/6/9**
*突然发现之前git上去是全部文件,修改文件和添加文件,可能导致git log被覆盖,这个文件中的内容就是我git上去打的log*
**正题:**
应该定制一个标准,先设计好我要在网络上传输什么数据
1.关于核心功能 查询密码 使用到的参数是function=query&md5=xxx
插入密码,使用到的参数是function=xxx&md5=xxx&pwd=xxx
2.关于bug提交,使用到的参数是function=subBug&softVer=xxx&andrVer=xxx&bug=xxxxxx
3.关于软件更新,检查版本,使用到的参数是function=check&softVer=xxx
然后考虑以后可能要扩充的功能,参数名还是抽象点,直接叫para0,para1......
所以后端代码就要进行修改
**2021/6/10**
修改了后端的代码,后端只会返回两种数据,一种是普通字符串,android端获取后会toast出来,另一种是json字符串,如果是json字符串就解析,然后对数据库进行相应的操作.
然后就完成了bug反馈的功能
写完后端和完成bug反馈功能后就发现,自定义的Handler的功能似乎写死了,不能针对不同的界面进行对应的操作,也不是说不行,只是看上去会有点乱,所以,handler处理msg也要制定一个规范
|
4 years ago |
ThankVinci
|
40dc5a8464
|
突然决定应该增加一个提交bug的功能(提交时间,版本号,Android版本,bug说明)
突然决定应该增加一个手动查密码的功能,即,可能用户需要用来解压的文件可能过大,在我优化没做好的情况下,可能会有bug导致无法读取md5码值或者无法解压的情况,用户可以在其他设备中获取待解压文件的md5值,手动在本软件中查询,即提供一个查询的功能
先完成一个提交bug的功能,数据库的表已经建成(提交时间,软件版本,Android版本,bug说明)
完成页面布局和基本逻辑设计后发现在创建线程的部分之前设计写死了传输的数据内容,需要重新设计
|
4 years ago |
ThankVinci
|
2dd545cada
|
为APP添加navgraph,侧边栏的菜单,图标等
使用到的库
implementation 'androidx.navigation:navigation-fragment:2.2.2'
implementation 'androidx.navigation:navigation-ui:2.2.2'
|
4 years ago |
ThankVinci
|
612d0fa7b8
|
先测试网络功能,新建一个NetHandler类继承Handler类并重写handlerMessage()方法,然后新建一个NetThread类实现Runnable接口用于实现网络连接,然后在handlerMessage()中实现接受Web端的数据并Toast出来
在这里,Web端print的是一个json型的字符串,所以Android端接受到这个字符串要进行解析,这里使用的是alibaba的fastjson库:implementation group: 'com.alibaba', name: 'fastjson', version: '1.2.75'
经过测试,成功Toast出数据库中对应md5码的pwd
|
4 years ago |
ThankVinci
|
c204b5ee1e
|
2021/6/8
重新建了一个Android项目,修改AndroidManifest文件的主题配置为黑色actionbar+白色主题,添加网络权限<uses-permission android:name="android.permission.INTERNET"/>
由于AndroidP之后默认的互联网协议是https,而不能用http,申请https需要域名,还要备案,挺麻烦的,所以需要在AndroidManifest文件中<application>标签下声明 android:usesCleartextTraffic="true" 才可使用http协议
|
4 years ago |
ThankVinci
|
6ed4e6007e
|
add README.md.
|
4 years ago |
ThankVinci
|
f8afeadf7f
|
删除文件 README.md
|
4 years ago |
ThankVinci
|
2ca5bccd07
|
add README.md.
开发思路:
1.核心功能:
一个文件管理器,读取压缩文件的md5码,上传到服务器进行比对,比对成功后直接解压缩,或者,用户输入密码后勾选同意共享密码,将文件md5码和密码上传到服务器进行保存.
1).需要一个布局加载Android外部存储的目录(涉及到的运行时权限),
2).需要一个或多个开源的解压缩算法
|
4 years ago |
ThankVinci
|
bae3d24cc2
|
Initial commit
|
4 years ago |