- 自从友盟关闭了版本更新功能后,安卓的版本更新只能自己来撸了,结合之前友盟的版本更新,其实实现起来也简单,这里简单说说版本更新实现的思路: 第一步,通过接口获取更新信息(版本号、更新内容、apk下载地址、是否强制更新) 第二步,通过接口拿到的版本号和本地的版本号进行比较,如果拿到的版本号比本地的版本号大,那就进行版本升级 第三步,版本升级分为三种情况: 1、非wifi... 自从友盟关闭了版本更新功能后,安卓的版本更新只能自己来撸了,结合之前友盟的版本更新,其实实现起来也简单,这里简单说说版本更新实现的思路: 第一步,通过接口获取更新信息(版本号、更新内容、apk下载地址、是否强制更新) 第二步,通过接口拿到的版本号和本地的版本号进行比较,如果拿到的版本号比本地的版本号大,那就进行版本升级 第三步,版本升级分为三种情况: 1、非wifi...
- 1 问题 APP用socket写了服务器,然后PC发送请求到APP出现跨域问题。 2 解决办法 在APP用socket服务器返回头里面添加如下关键代码 header="Content-Type: "+ JSON_TYPE + "; charset=utf-... 1 问题 APP用socket写了服务器,然后PC发送请求到APP出现跨域问题。 2 解决办法 在APP用socket服务器返回头里面添加如下关键代码 header="Content-Type: "+ JSON_TYPE + "; charset=utf-...
- 1、问题 客户改了app的名字,在服务端替换了新的apk,然后下次升级更新的之前的apk. 2、总结 1、如果涉及到修改app的桌面名字的定制,如果客户要求从浏览器下载的的apk名字也要修改的话,我们会把这个新的apk放到linux 服务端,这个时候我们需要注意升级问题,比如源代码里面遇到升级情况会下载之前那个linux ... 1、问题 客户改了app的名字,在服务端替换了新的apk,然后下次升级更新的之前的apk. 2、总结 1、如果涉及到修改app的桌面名字的定制,如果客户要求从浏览器下载的的apk名字也要修改的话,我们会把这个新的apk放到linux 服务端,这个时候我们需要注意升级问题,比如源代码里面遇到升级情况会下载之前那个linux ...
- 1、问题现象 部分手机(oppo r9s)安装release版本的apk出现了崩溃,但是部分手机安装正常 2、崩溃日志 01-15 09:42:37.239 5889 5889 E AndroidRuntime: java.lang.OutOfMemoryError: Failed to allocate a 6606... 1、问题现象 部分手机(oppo r9s)安装release版本的apk出现了崩溃,但是部分手机安装正常 2、崩溃日志 01-15 09:42:37.239 5889 5889 E AndroidRuntime: java.lang.OutOfMemoryError: Failed to allocate a 6606...
- 1 问题 把app作为独立的module导入其他项目 2 步骤 1)在app的里面的build.gradle里面把 apply plugin: 'com.android.application' 替换成如下 apply p... 1 问题 把app作为独立的module导入其他项目 2 步骤 1)在app的里面的build.gradle里面把 apply plugin: 'com.android.application' 替换成如下 apply p...
- 1 需求 找出手机多少天没有使用的所有APP 2 思路 通过 ACTION_USAGE_ACCESS_SETTINGS权限得到多少天已经使用的APP的包名,然后获取手机所有用户APP,剩下的APP就是多少天没有使用的A... 1 需求 找出手机多少天没有使用的所有APP 2 思路 通过 ACTION_USAGE_ACCESS_SETTINGS权限得到多少天已经使用的APP的包名,然后获取手机所有用户APP,剩下的APP就是多少天没有使用的A...
- 1、需求 Android实现2个图标app入口进入不同的页面,一个图标点击进去主app页面,一个图标点击直接进入app页面的里面一个子页面,两个图标功能点击效果独立,不能乱跳,副桌面图标然后返回也是直接返回,不能先返回到本地,就是感觉像2个独立运行的app一样,互不干扰。 问题: 网上看了很多Demo,都很简单,但是存在一个问题,就是当一个桌面图标点击打开app主体... 1、需求 Android实现2个图标app入口进入不同的页面,一个图标点击进去主app页面,一个图标点击直接进入app页面的里面一个子页面,两个图标功能点击效果独立,不能乱跳,副桌面图标然后返回也是直接返回,不能先返回到本地,就是感觉像2个独立运行的app一样,互不干扰。 问题: 网上看了很多Demo,都很简单,但是存在一个问题,就是当一个桌面图标点击打开app主体...
- 1 、问题 有时候我们启动APP的时候,APP奔溃,在android studio里面日志可能冲掉,或者是云平台的手机安装的app,根本就没有android stduio,那我们用什么办法快速知道启动奔溃日志呢? ... 1 、问题 有时候我们启动APP的时候,APP奔溃,在android studio里面日志可能冲掉,或者是云平台的手机安装的app,根本就没有android stduio,那我们用什么办法快速知道启动奔溃日志呢? ...
- 1、问题 问题APP奔溃重启导致依附的Fragment白屏问题 2、分析 app奔溃重启Activity肯定更新了,但是依附在Activity里面的fragment有缓存,用的是以前的activity的content,所以获取到是空的, 就会导致fragment依附失败,... 1、问题 问题APP奔溃重启导致依附的Fragment白屏问题 2、分析 app奔溃重启Activity肯定更新了,但是依附在Activity里面的fragment有缓存,用的是以前的activity的content,所以获取到是空的, 就会导致fragment依附失败,...
- 1、adb jdwp命令 adb jdwp获取debug版本app的进程Id 2、用途 带我们运行一个debug版本的app时候,我们需要过滤日志,我们一般采取这种办法 adb shell ps | grep package 得到进程ID,然后 adb logcat | grep pid &nbs... 1、adb jdwp命令 adb jdwp获取debug版本app的进程Id 2、用途 带我们运行一个debug版本的app时候,我们需要过滤日志,我们一般采取这种办法 adb shell ps | grep package 得到进程ID,然后 adb logcat | grep pid &nbs...
- 1、问题 我们一般很多时候会需要在ubuntu终端上打印当前运行app的日志,我们一般常见的做法是 1)、获取包名 打开当前运行的app,然后输入如下命令,然后在第一行TASK后面的就可以看到包名 adb shell dumpsys activity top 2)、我们的终端安装了pidcat.py脚本,... 1、问题 我们一般很多时候会需要在ubuntu终端上打印当前运行app的日志,我们一般常见的做法是 1)、获取包名 打开当前运行的app,然后输入如下命令,然后在第一行TASK后面的就可以看到包名 adb shell dumpsys activity top 2)、我们的终端安装了pidcat.py脚本,...
- 1、ContentProvider简单介绍 ContentProvider以在不同的应用程序之间共享数据,ContentProvider底层实现是Binder,它为存储和获取数据提供统一的接口 2、实现哪些功能? 比如我们有两个app,分别是ContentProviderServer和ContentProv... 1、ContentProvider简单介绍 ContentProvider以在不同的应用程序之间共享数据,ContentProvider底层实现是Binder,它为存储和获取数据提供统一的接口 2、实现哪些功能? 比如我们有两个app,分别是ContentProviderServer和ContentProv...
- 本文目录 SurfaceView与View区别使用缓冲的Canvas绘图SurfaceView生命周期实现天气APP背景自动左右循环移动效果 SurfaceView与View区别 前面我们所有的讲解基本都是自定义View来实现各种Android的自定义控件,但编写过相机的Android程序员,肯定对SurfaceView不陌生,那什么时候该用Sur... 本文目录 SurfaceView与View区别使用缓冲的Canvas绘图SurfaceView生命周期实现天气APP背景自动左右循环移动效果 SurfaceView与View区别 前面我们所有的讲解基本都是自定义View来实现各种Android的自定义控件,但编写过相机的Android程序员,肯定对SurfaceView不陌生,那什么时候该用Sur...
- 伴随着众多新特性和新功能,Android6.0(API level 23)在系统和API上都有着诸多的改变。本文着重介绍几个关键变化,以帮助你理解这些改变对你的APP产生的影响。 一、运行时权限检查(Runtime Permisssions) 此次发布引入了一个新的权限管理模型,使得用户能够在运行时控制应用的权限。这个模型一方面提高了用户在... 伴随着众多新特性和新功能,Android6.0(API level 23)在系统和API上都有着诸多的改变。本文着重介绍几个关键变化,以帮助你理解这些改变对你的APP产生的影响。 一、运行时权限检查(Runtime Permisssions) 此次发布引入了一个新的权限管理模型,使得用户能够在运行时控制应用的权限。这个模型一方面提高了用户在...
- 1 问题 通过Intent卸载APP在安卓9.0手机上没反应,也没报错,卸载相关APP跳转到卸载页面代码 fun unInstallApp(packageName: String) { val uri: Uri = Uri.fromParts("package", packageName, null) val intent = Intent(Intent.ACTION_... 1 问题 通过Intent卸载APP在安卓9.0手机上没反应,也没报错,卸载相关APP跳转到卸载页面代码 fun unInstallApp(packageName: String) { val uri: Uri = Uri.fromParts("package", packageName, null) val intent = Intent(Intent.ACTION_...
上滑加载中
推荐直播
-
GaussDB数据库开发
2025/01/15 周三 16:00-17:30
Steven 华为云学堂技术讲师
本期直播将带你了解GaussDB数据库开发相关知识,并通过实验指导大家利用java基于JDBC的方式来完成GaussD数据库基础操作。
回顾中 -
OpenHarmony应用开发之网络数据请求与数据解析
2025/01/16 周四 19:00-20:30
华为开发者布道师、南京师范大学泰州学院副教授,硕士研究生导师,开放原子教育银牌认证讲师
科技浪潮中,鸿蒙生态强势崛起,OpenHarmony开启智能终端无限可能。当下,其原生应用开发适配潜力巨大,终端设备已广泛融入生活各场景,从家居到办公、穿戴至车载。 现在,机会敲门!我们的直播聚焦OpenHarmony关键的网络数据请求与解析,抛开晦涩理论,用真实案例带你掌握数据访问接口,轻松应对复杂网络请求、精准解析Json与Xml数据。参与直播,为开发鸿蒙App夯实基础,抢占科技新高地,别错过!
即将直播
热门标签