教你一步步集成友盟+推送(UPUSH)

因为安卓的开源的原因,很多厂商都自己定制了自己的系统,以至于安卓的碎片化特别严重。今天我们要讲的是推送这个功能,消息推送在Android开发中应用的场景是越来越多了,比如说电商产品进行活动宣传、资讯类产品进行新闻推送等等,1. 主流的第三方推送平台分类手机厂商类:小米推送、华为推送。第三方平台类:...

2018-05-17 15:38:15

阅读数 6890

评论数 2

阿里热修复AndFix的使用教程

一般我们开发了的APP在上线之前都会进行全面的测试,等APP测试基本稳定后,公司会进行封版,待上线。这时如果开发人员又发现了bug,但是又封版了,不能再修复,防止引入新的问题。这时这个bug的修复就只能是在下一个版本再修复。但是,如果是一个小小的问题,我们就总是不停的修复后,发布新版本,用户就要不...

2017-12-27 10:47:29

阅读数 674

评论数 0

异常捕获上传服务器

import android.content.Context; import android.content.SharedPreferences; import android.content.pm.PackageInfo; import android.content.pm.PackageMan...

2017-12-26 17:23:19

阅读数 216

评论数 0

gradle.properties的使用教程

一般我们都把全局属性都编写在一个工具类中,如果是有环境的切换的话,那么我们还会定义一个标志来进行相应的变换。对于项目而言,有时候需要配置某些敏感信息。比如密码,帐号等。而这些信息需要被很多类共同使用,所以必须有一个全局的配置。当需要把项目push到git上时,我们不希望别人看到我们项目的key,t...

2017-12-14 17:44:46

阅读数 3418

评论数 1

selector+shape使用工具类

为了避免在drawable文件夹下创建太多的selector,避免同一个样式,因为忘记了名字而重复创建。我们创建一个工具类来实现我们想要的样式,需要的样式,直接在代码中实现。 工具类如下:import android.content.Context; import android.content...

2017-12-11 10:00:01

阅读数 300

评论数 0

反编译以及代码混淆的简单介绍

要反编译apk需要下面3个工具: 1. apktool (资源文件获取) 作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看 2. dex2jar(源码文件获取) 作用:将apk反编译成java源码(classes.dex转化成jar文件) 3. j...

2017-11-29 18:11:58

阅读数 137

评论数 0

多渠道打包方法简介

渠道包就是要在安装包中添加渠道信息,也就是channel,对应不同的渠道,例如:小米市场、360市场、应用宝市场等 我们要在安装包中添加不同的标识,应用在请求网络的时候携带渠道信息,方便后台做运营统计(这就是添加渠道信息的用处)。 实现多渠道打包的原理: 一般来讲,这个渠道的标识会放在And...

2017-11-27 15:06:05

阅读数 4624

评论数 0

Android 签名打包出现的错误的解决方法以及代码中获取应用签名信息方法

现象: Android导出APK包时出现,编译调试时不会出现。 错误信息:Error:(16) Error: "baidutieba_client_inavailable" is not translated in "en" (English) [Mis...

2017-11-27 11:07:49

阅读数 1014

评论数 0

联网更新版本功能的流程说明

版本更新的流程逻辑图 1、判断手机是否可以联网 /** * 判断手机是否联网 * ConnectivityManager */ private boolean isConnected() { boolean connected = ...

2017-11-24 18:12:30

阅读数 179

评论数 0

分享给好友功能的实现

1.常用的分享功能实现的框架 http://mob.com/ https://www.umeng.com/2.sharesdk说明: ShareSDK是一种社会化分享组件,为iOS、Android、WP8 的APP提供社会化功能,集成了一些常用的类库和接口,缩短开发者的开发时间,还有社会...

2017-11-24 14:27:53

阅读数 5852

评论数 1

登录和退出登录的操作逻辑

登录功能的操作逻辑步骤如下:可以分为五个步骤来实现。 1、进入页面先判断用户是否已经登录 private void isLogin() { //查看本地是否有用户的登录信息 SharedPreferences sp = this.getActivity()....

2017-11-22 14:41:24

阅读数 13898

评论数 0

更换头像的逻辑代码,两个功能,一个是从图库选择,一个是打开相机自己拍照

效果: public void changeIcon(View view){ String[] items = new String[]{"图库","相机"}; new AlertDialog.Builder(this) ...

2017-11-21 18:19:10

阅读数 531

评论数 0

压缩并设置圆形头像

效果图: 1.设置布局属性:<ImageView android:scaleType="fitXY"/>2.得到指定圆形的Bitmap对象public static Bitmap circleBitmap(Bitmap source) {int width = s...

2017-11-21 15:18:28

阅读数 167

评论数 0

Android的shape功能和selector功能的代码中定义的简单使用及替换

使用代码定义的shape资源类 public static Drawable getDrawable(int rgb, int radius){ GradientDrawable gradientDrawable = new GradientDrawable(); ...

2017-11-17 10:44:55

阅读数 126

评论数 0

流式布局控件的编写

import android.content.Context; import android.util.AttributeSet; import android.view.View; import android.view.ViewGroup;import java.util.ArrayList;...

2017-11-16 17:11:15

阅读数 219

评论数 0

APP安装完成打开再返回桌面打开启动两次应用的问题

bug重现步骤: 一般我们从应用市场下载App后,安装完成了点击打开,启动APP,再按Home键切换到后台,再找到APP的图标,点击启动。这时候APP不是打开之前切换到后台的APP,而是重新打开了一个任务。所以这时候退出APP,需要返回两次才能完全退出。 分析问题: 首先我们要知道,一个ta...

2017-11-16 15:12:11

阅读数 353

评论数 0

App前后台切换的监听

APP是否在前台运行的监听。 方案: 实现的大体思路:在Activity生命周期中的onPause()中判断是否进入后台,如果进入后台你就可以做一些你想要做的操作,Activity生命周期中的OnResume()方法中判断App是否进入前台,如果进入前台就做自己想要的操作。 具体实现: ...

2017-11-16 14:27:09

阅读数 199

评论数 0

随机飞入效果视图控件

效果图: 随机飞入效果ui视图控件文件夹randomLayout,文件中包含四个文件类 AnimationUtil.class、RandomLayout.class、ShakeListener.class、StellarMap.class四个文件类。 AnimationUtil.class ...

2017-11-15 15:01:33

阅读数 181

评论数 0

BaseAdapter的封装

ListView的使用,必须有一个装配数据的适配器。所以BaseAdapter的封装就显得尤为重要。 适配器的作用:将具体的集合数据装配到具体的一个item layout中 问题一:数据类型是不确定的。 问题二:item layout的布局是不确定的 问题三:将集合...

2017-11-15 10:19:58

阅读数 92

评论数 0

androidstudio3.0使用butterknife报错解决

Android studio3.0稳定版本发布了,本人总喜欢最新的东西,所以一出稳定版就更新了,但是问题出现了,之前可以运行的项目报错了。Annotation processors must be explicitly declared now. The following dependenci...

2017-11-14 15:17:33

阅读数 287

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭