Android开发( 右侧选择分类 )
android01

Android产品研发(六)-- Apk混淆

前面一篇文章中我们讲解了android里面的多渠道打包,对于大型的app来说,几百个上千个渠道包都是很正常的事,所以效率定制化是一件很重要的事。主要讲解了三种多渠道打包方式,并分析了其各自的利弊,在各自产品多渠道打包的时候,可以根据自身的产品需求选择相应的打包方式。而本文主要讲解Apk的混淆,这里的混淆分为两种代码混淆和资源文件混淆。实际的产品研发中为了防止自己的劳动成果被别人窃取,混淆代码能有效
800 人浏览
littleGG

Android最全开发资源

Android最全开发资源首先, 我觉得最好的Android学习路径还是:看Google Android官方开发主页(在国内的朋友可以上这里), 要记住 Read The "Friendly" (F***ing) Doc (阅读那该死的文档) , 和看 Google Android 官方视频教程。加上自己写程序。啥也别说了, 辛苦收集的中外精彩资源。觉得好, 记得点个赞~问:为
796 人浏览
android

Glide系列之-Glide清除缓存工具

Glide是谷歌推荐的一款加载图片的第三方框架,对内存优化更好,更省资源,它的优点,我就不一一描述了,有兴趣的朋友可以百度一下,介绍的还是挺详细的。今天主要给大家介绍一下关于怎么获取Glide的图片缓存和清除图片缓存,其实很简单,下面是写的一个工具类,简单易懂,便捷好用!packagecom.jiluo.paipai.util; importandroid.content.Context;
795 人浏览
cheng

5 天 将近 1500 Star 的Google Flutter UI 模板

2019 年 9 月 10 日 - 11 日,Google 开发者大会在上海召开,Android 团队更新了最新产品 Android 10;Google 产品经理樊舟颖宣布了 Flutter 1.9 版本上线,这一版本支持更多的功能和语言,并大幅度改进了 Flutter 网页版。 可见 Google 对 Flutter 的重视。 今天推荐的这个项目是:Best-Flutter-UI-Templ
795 人浏览
SuperBig

Android Service详解(三)---IntentService

这是第三篇文章主要讲的是IntentService的使用一、Service的耗时操作如何解决呢?不管是何种Service,它默认都是在应用程序的主线程(亦即UI线程)中运行的。所以,如果你的Service将要运行非常耗时或者可能被阻塞的操作时,你的应用程序将会被挂起,甚至会出现ANR错误。为了避免这一问题,你应该在Service中重新启动一个新的线程来进行这些操作。现有两种方法大家参考:① 直接在
790 人浏览
cheng

Android 点击空白区域不关闭Dialog

点击空白区域不关闭Dialog这个虽说与返回键无关,但使用场景还是很多的,实现也很简单:// 点击空白区域不关闭 Dialog(默认为 true) mDialog.setCanceledOnTouchOutside(false);
785 人浏览
ios

实况天气接口文档(1天) - 3小时更新一次

实况天气接口文档(1天) - 3小时更新一次声明: v1七日,v6实况天气接口无需注册,永久免费,请放心使用! (仅限于个人非商业用途, 日限5万次)商用请付费, 以便获得更快的更新频率和稳定性! API地址GET https://www.tianqiapi.com/api/?version=v6 GET参数 参数 类型 必填 备注
784 人浏览
android02

安卓app升级的3种方式及交互细节

app升级是一个看似简单其实很复杂的事情;网页可以随时更新,用户不需要做任何操作就可以升级到最新版本;但app每次版本发布都需要用户配合才能完成。如何在不同的网络环境下,尽量不打扰用户,让更多的用户完成版本升级?我们以几个电商app为例,来研究下他们是怎么做的。一、WIFI环境(WLAN) 1. 静默升级、自动下载、提示升级如图14-1,京东、天猫、苏宁正好代表了目前主要的3种升级方式。京东采用的
779 人浏览
androidproject

Android GridPager组件,短短几行代码即可实现首页分类多页展示

GridPagerGridPager组件:ViewPager结合GridView,轻松实现类似美团首页分类多页展示。也可用于表情面板的展示。 链式调用,属性配置,几行代码轻松搞定。① 应用的首页经常需要用到这样的分类多页展示的效果,还有些消息输入框需要这样的表情面板。② 既然是常用的,作为懒惰的我,肯定不会每次都去写一遍。网上也找了很多类似的例子,但始终不是我想要的简洁接入使用的方式。要么就是加载
777 人浏览
android01

Android产品研发(十六)-- 开发者选项

上一篇文章中我们讲解了android中内存对象的序列化方式。由于android开发涉及到不同Activity的数据传递,对于基本数据类型数据的传递是没有问题的,但是一旦涉及到复杂数据类型,就需要将数据序列化以便传输,在文章中我们主要讲解了两种数据序列化的方式:实现Serializable接口和实现Parcelable接口,同时也比较了它们各自的优缺点和实现方式。具体关于内存对象序列化方面的知识可参
773 人浏览
android

Android 嵌套RecyclerView禁止滑动事件

//禁用滑动事件 recyclerview.setNestedScrollingEnabled(false)
764 人浏览
android01

Android源码解析(十三)-- apk安装流程

上一篇文章中给大家分析了一下android系统启动之后调用PackageManagerService服务并解析系统特定目录,解析apk文件并安装的过程,这个安装过期实际上是没有图形界面的,底层调用的是我们平时比较熟悉的adb命令,那么我们平时安装apk文件的时候大部分是都过图形界面安装的,那么这种方式安装apk具体的流程是怎样的呢?下面我们就来具体看一下apk的具体安装过程,相信大家都知道如果我们
763 人浏览
android

Android中EditText常用属性设置

EditText继承关系:View–>TextView–>EditText常用属性如下:android:layout_gravity="center_vertical"//设置控件显示的位置:默认top,这里居中显示,还有bottom android:background="@android:drawable/edit_text"这个属性,
762 人浏览
android

Glide最新版V4使用指南

概述Glide是一个Android的图片加载和缓存库,它主要专注于大量图片的流畅加载,Glide几乎可以胜任任何你需要使用到图片从网络拉取,压缩,显示的场景。本文主要基于Glide4.0版本介绍其基本使用方法。1 集成Github地址: https://github.com/bumptech/gliderepositories{ mavenCentral() maven{url'htt
759 人浏览
android00

android遍历map的两种常用方法

Map一般用来保存具有映射关系的数据,Map里保存着两组数据:key(键)和value(值),它们可以是任何引用类型的数据,但key不能重复。所以通过指定的key就可以取出对应的value。遍历方式一、当键和值都需要用到时所采用的方法。Map<Integer, Integer> map = new HashMap<Integer, Integer>(); for (Ma
758 人浏览
androidproject

RecyclerView的集合 Learning-RecyclerView

博客原地址:Anthony的简书博客github地址:https://github.com/CameloeAnthony/Learning-RecyclerView欢迎关注我的微博:Anthony最近在研究RecyclerView ,还是习惯整理一下开源项目放到github上 ,欢迎提交更新 ,fork,star。 排序纯属个人直觉。序号项目名称项目描述预览1cymcsg/UltimateRecy
756 人浏览
php

yii2 Bad Request (#400)---Unable to verify your data submission

方法一、不管是用ajax提交还是表单提交,get方式很成功,但post提交失败。 报错 Bad Request (#400) 网上查各种资料,得知原因,是因为yii2.0的防csrf问题,没有csrftoken是提交不成功的。 解决办法: 1.禁用yii2的csrf验证,也就是在控制器中加一行代码:public $enableCsrfValidation = false;缺点:不安全(不推荐)方法
755 人浏览
android01

Android产品研发(九)-- 较少App网络传输协议

上一篇文章中我们讲解了App的数据统计,其主要分为两种:使用第三方服务统计和自身实现数据统计。一般而言我们使用第三方统计服务已经可以很好的满足我们的也无需求了,只是部分数据敏感性App,可能自身实现数据统计服务是一个更好的选择。而本文中将要介绍的是App端的网络传输协议。那么这里首先需要明确一点的是什么是网络传输协议呢?好吧,这里首先套用一段百度百科的定义:网络传输协议或简称为传送协议(Commu
754 人浏览
cheng

点击返回键,关闭Dialog,并且关闭Activity

点击返回键,关闭Dialog,并且关闭Activity当我们点击返回键,需要将整个Activity和Dialog一块关闭时。我们首先想到的就是通过onKeyDown()方法,重写Activity的返回键事件;但结果并不愉快,好像没有达到我们想要的效果。原来是Dialog抢走了Activity的焦点,Activity不再是当前的焦点,所以无法获取back键事件,因此我们需要重写Dialog的返回键事
747 人浏览
android

Android-string.xml动态替换文本

需求:我是做Android开发的,工作3年了。这段字符串中,Android和3需要动态替换。在string.xml中定义:<stringname="demo">我是做%1$s开发的,工作%2$d了。</string>在程序中使用:Stringinput=getResources().getString(R.string.demo); Stringoup
747 人浏览