-
android01
-
上一篇文章中我们讲解了android app实现长连接的几种方式,各自的优缺点以及具体的实现,一般而言使用第三方的推送服务已经可以满足了基本的业务需求,当然了若是对技术有追求的可以通过NIO或者是MINA实现自身的长连接服务,但是自己实现的长连接服务一来比较复杂耗时比较多,而且可能过程中有许多坑要填,一般而言推荐使用第三方的推送服务,稳定简单,具体管理长连接部分的模块可参考:android产品研发
-
androidproject
-
flutter自定义波浪viewvoidmain()=>runApp(WaveWidget(
bgColor:Colors.lightBlue,
//imageProvider:AssetImage('assets/pic/ic_headimg.png'),
//imgSize:Size(50.0,0.0),
size:Size(300.0,500.0),
));
-
android01
-
上一篇文章中我们讲解了在Android App的实际开发中,尽量不在静态变量、全局变量中保存数据,这是因为App的进程可能是不安全的,在部分手机中其有可能被系统杀死,从而造成静态全局变量重新初始化。而这时候App当前页面的Activity还会被保存在内存中,从而造成App并没有被重启的假象,但是这只是显示的页面没有被杀死,而进程实际上是被重新启动了的。这时候在使用已被重新初始化的静态变量就会发生一
-
android01
-
上一篇文章中我们介绍了hybrid开发相关的知识。重点介绍了hybrid开发的概念,hybrid开发的作用,android中如何实现hybrid开发,android中实现hybrid开发的例子,以及产品开发中hybrid开发实践等,通过对以上这些概念的介绍我们对hybrid开发应该已经有了大概的了解,更多具体的内容可参考我的:android产品研发(十七)-->Hybrid开发本文中我们将介
-
android
-
在我们的开发中,经常会遇到从后端请求回去的数据带有转义符的字符串,如何显示呢
答案其实很简单, 直接用 Html.fromHtml 函数就可以了
例如:请求来的数据
-
android
-
需求:我是做Android开发的,工作3年了。这段字符串中,Android和3需要动态替换。在string.xml中定义:<stringname="demo">我是做%1$s开发的,工作%2$d了。</string>在程序中使用:Stringinput=getResources().getString(R.string.demo);
Stringoup
-
android01
-
前面一篇文章中我们讲解了android里面的多渠道打包,对于大型的app来说,几百个上千个渠道包都是很正常的事,所以效率定制化是一件很重要的事。主要讲解了三种多渠道打包方式,并分析了其各自的利弊,在各自产品多渠道打包的时候,可以根据自身的产品需求选择相应的打包方式。而本文主要讲解Apk的混淆,这里的混淆分为两种代码混淆和资源文件混淆。实际的产品研发中为了防止自己的劳动成果被别人窃取,混淆代码能有效
-
cnbzlj
-
需要卸载Android Studio应用及相关配置,在终端(terminal)执行以下命令:rm -Rf /Applications/Android\ Studio.app
rm -Rf ~/Library/Preferences/AndroidStudio*
rm ~/Library/Preferences/com.google.android.studio.plist
rm -Rf ~/
-
android
-
可能大家听都没有听说过这个框架,但是现在其实已经很火了。在面试时,很多公司要求面试者会使用这个库,所以在网上查找资料,学习了如何使用,这里记录一下。前言 RxAndroid是RxJava在Android上的一个扩展,大牛JakeWharton的项目。据说和Retorfit、OkHttp组合起来使用,效果不是一般的好。而且用它似乎可以完全替代eventBus和OTTO,这么牛的东西当然要研究研究了
-
cnbzlj
-
今天,简单讲讲android里如何解决String.format在切换语言时存在的问题。
之前,我写过一篇博客,讲关于String.format的基本使用,大家如果没有看过,建议看看或者去网上查找资料。但是昨天,发现当手机切换成阿拉伯语时,String.format格式化的数据是一串奇怪的字符串。于是在网上查找资料,最终解决了问题。这里记录一下。
这里还是先回顾一下String.format的
-
androidproject
-
UniversalAdapter这是封装的带分类Recyclerview的Adapter,主要解决项目中分类列表繁琐的重复劳动。不影响Recyclerview或其他封装的上拉下拉Recyclerview的正常使用只需写一个继承UniversalAdapter的adapter支持分类和子项部分的自定义布局数据类需实现OnTypeList接口数据结构JSON示例[
{
"title&qu
-
android00
-
Android 获取app版本号直接上代码: /**
* 获取版本号
* Context context
* @return 版本号
*/
public static String getAppVersionName(Context context) {
String versionName = "";
-
android01
-
国内的Android开发者还是很苦逼的,由于众所周知的原因,google play无法再国内打开,所以android系的应用市场,群雄争霸,而后果就是国内存在着有众多的应用市场,产品在不同的渠道可能有这不同的统计需求,为此android开发人员需要为每个应用市场发布一个安装包,这里就涉及到了android的多渠道打包。本文主要讲解的就是几种主流的多渠道打包方式,以及其优劣势。通过配置gradle脚
-
androidproject
-
SpriteAnimationViewA customized view to play sprite sheet animation查看中文版本Usage:<com.xinxin.spritesheetanimation.SpriteAnimationView
android:id="@+id/animation_view"
android:layout_width
-
cnbzlj
-
今天,简单讲讲android里再listview调用notifyDataSetChanged刷新界面时,Imageloader加载图片会闪烁的问题。最近,发现app里的listview图片会出现闪烁的情况。我发现是由于调用notifyDataSetChanged这个方法时候,图片全部闪烁一下,原因是图片全部重新加载了一次,导致闪烁。后来修改为局部刷新,但是还是还是存在是不是闪烁的情况,于是在网上查
-
android01
-
上一篇文章中我们介绍了android开发中经常会涉及到但又常常被忽视掉的开发者模式。主要讲解了包括如何打开手机的开发者模式,开发者模式中各个菜单的意义和作用,如何清除手机App数据,以及清除手机App数据具体清除那些数据等知识点,具体关于android中开发者模式的知识,可参考我的: android产品研发(十六)-->开发者选项本文将介绍android中hybird开发相关的知识点。hyb
-
android01
-
上一篇文章中给大家分析了一下android系统启动之后调用PackageManagerService服务并解析系统特定目录,解析apk文件并安装的过程,这个安装过期实际上是没有图形界面的,底层调用的是我们平时比较熟悉的adb命令,那么我们平时安装apk文件的时候大部分是都过图形界面安装的,那么这种方式安装apk具体的流程是怎样的呢?下面我们就来具体看一下apk的具体安装过程,相信大家都知道如果我们
-
android
-
WindowMenuDemoAndroid仿Qzone底部导航栏加号弹出菜单
-
android01
-
上一篇文章中我们讲解了android app中的升级更新操作,app的升级更新操作算是App的标配了,升级操作就是获取App的升级信息,更新操作是下载,安装,更新app,其中我们既可以使用app store获取应用的升级信息,也可以在应用内通过请求本地服务器获取应用的升级信息,并通过与本地app的版本号对比判断应用是否需要升级。升级信息是app更新的基础,只有我们的app的升级信息指明需要更新,我
-
cnbzlj
-
今天带给大家一个比较实用的轮播图框架,banner1.导入依赖Gradledependencies{
compile 'com.youth.banner:banner:1.4.10' //最新版本
}或者引用本地libcompile project(':banner')2.添加权限<uses-permission android:name="android.permissio