[android] 手机卫士项目
按照模块组织代码的包结构;各个模块之间的业务是独立的
风行网
----播放器 com.funshion.android.player
----下载模块 com.funshion.android.download
----联网 com.funshion.android.network
按照类型组织代码的包结构
-----界面 com.tsh.activity
-----自定义界面 com.tsh.ui
-----业务逻辑 com.tsh.engine 例如:联网
-----持久化 com.tsh.db 数据库
com.tsh.db.dao
-----后台服务 com.tsh.service
-----接收广播 com.tsh.receiver
-----公共的API接口 com.tsh.utils
反编译代码可以知道别人代码的包结构
[android] 工程的创建
使用友盟统计android各个系统的使用率,http://www.umindex.com/devices/android_os
最低版本是4.0
最多版本是4.4.4
清单文件里,最大SDK版本不填,填了高版本就无法安装了
欢迎界面,SplashActivity
[android] Splash欢迎界面的UI
显示logo,便于宣传
应用程序数据的初始化
检查版本信息
检查网络
检查版权
主界面去掉标题栏
清单文件里面,设置主题,android:theme=”@android:style/Theme.Black.NoTitleBar”
文字的阴影效果
设置阴影颜色 android:shadowColor=”#ff0000”
设置阴影x轴偏移android:shadowDx=”1”
设置阴影y轴便宜 android:shadowDy=”1”
设置阴影的半径 android:shadowRadius=”1”
开发环境看不到阴影效果
id的命名规范 控件_界面_功能 例如:tv_splash_version
添加个加载框
使用控件ProgressBar,布局水平居中,位于版本信息的下面,layout_below=”@id/xxx”
得到应有程序的版本信息
获取PackageManager对象,调用getPackagerManager()方法
调用PackageManager对象的getPackageInfo(),获取包信息获取到PackageInfo对象,参数:包名,附加信息
包名可以使用getPackageName()来得到
获取PackageInfo对象的versionName属性,就是版本名称
ctrl + shift + o 快速导包
相关文章
- 解决第三方邮箱APP登陆QQ、163邮箱无法验证账户名或密码的问题(IOS、MacOS、Windows、Android)
- Mac电脑运行ios应用PlayCover
- 苹果发布 iOS 16 公开测试版,一起来看看这几项新功能
- 解决 Flutter 引起的 iOS 内存崩溃问题
- iOS 16 中的 Live Text 的更新
- iOS16 中的 3 种新字体宽度样式
- 在 iOS 16 中用 SwiftUI Charts 创建一个折线图
- 在 iOS16 中用 SwiftUI 图表定制一个线图
- Android平台GB28181设备接入端如何支持跨网段语音对讲?
- 基于flask和bootstrap-table的通用数据查询
- 爬虫方案 | 爬取大众点评网评论的几个思路(从小程序端)
- 【黄啊码】如何用小程序实现世界杯参赛队伍投票
- 《Android App开发进阶与项目实战》资源下载和内容勘误
- 微信小程序使用阿里巴巴的矢量图标iconfont
- 微信小程序 点击显示隐藏 极简Tab标签 点击添加class样式
- 微信小程序 wx:if 与 hidden区别
- 微信小程序 CSS border-radius元素 overflow:hidden失效问题 iPhone ios 苹果兼容问题
- 微信小程序 自定义 tabBar案例 官方案例迁入无效解决方法 非 tab 页显示 tabBar的问题解决 自定义tabBar与原生tabBar以及自写伪tabbar的区别
- IOS APPStore 上传更新应用版本 软件
- Android - NETD解读