
Android
文章平均质量分 86
Jamin_正宗红罐辣酱
http://wangjieming.com
展开
-
Android App Bundle(aab)与UnsatisfiedLinkError
一.起因所做项目因为是在Google Play市场,并且在2019.8.1开始,必须要携带64位so库,又因为所做App涉及到C层库比较多。大概有10MB左右。所以使用了Google最新的Android App Bundle的方式进行打包,就是俗称的aab。二.遇到的问题在我们通过GP发布了aab之后,遇到了很多Exception: java.lang.UnsatisfiedLinkErro...原创 2019-08-04 19:25:46 · 4193 阅读 · 0 评论 -
Android 根据两点经纬度计算直线距离
// 计算两点距离02 03private final double EARTH_RADIUS = 6378137.0; 04 05private double GetDistance(double转载 2013-06-06 19:28:20 · 3186 阅读 · 1 评论 -
Android系统自带样式Android:theme
俗话说好记性不如烂笔头,以前比较少会记录下来用过的东西,导致每次需要的时候都要再去google一下,现在开始多多记录下吧。view sourceprint?01android:theme="@android:style/Theme.Dialog" 将一个Activity显示为能话框模式转载 2013-06-06 19:29:10 · 2268 阅读 · 0 评论 -
Android DOC翻译—Processes and Threads
Processes and ThreadsWhen an application component starts and the application does not have any other components running, the Android system starts a new Linux process for the application with a sin翻译 2011-12-21 20:40:24 · 1095 阅读 · 1 评论 -
XAuth——Android客户端授权认证
xAuth认证实际上是OAuth认证的简化版。目前xAuth只对桌面客户端和移动客户端开放申请。Web应用请使用OAuth。xAuth旨在增强客户端的用户体验,减少页面跳转次数。采用xAuth认证的桌面应用和移动应用可以跳过oauth/request_token(获取Request Token)以及oauth/authorize(授权Request Token)两步,只要提供了username原创 2011-12-29 17:29:36 · 2465 阅读 · 0 评论 -
Android控件常用属性
android.view.View已知直接子类:AnalogClock, ImageView, KeyboardView, ProgressBar, SurfaceView, TextView, ViewGroup, ViewStub已知间接子类:AbsListView, AbsSeekBar, AbsSpinner, AbsoluteLayout, AdapterView,转载 2012-02-23 14:26:51 · 4187 阅读 · 0 评论 -
关于Android语言国际化和尺寸适应
Providing ResourcesYou should always externalize application resources such as images and strings from your code, so that you can maintain them independently. You should also provide alternative res翻译 2012-02-21 16:24:31 · 1451 阅读 · 0 评论 -
Service和Thread的区别?
答:servie是系统的组件,它由系统进程托管(servicemanager);它们之间的通信类似于client和server,是一种轻量级的ipc通信,这种通信的载体是binder,它是在linux层交换信息的一种ipc。而thread是由本应用程序托管。 1). Thread:Thread是程序执行的最小单元,它是分配CPU的基本单位。可以用 Thread来执行一些异步的操作。2)转载 2012-05-08 15:31:16 · 2570 阅读 · 0 评论 -
Android Performance(1) StrictMode
Android Performance(1) StrictMode转载请注明来自:http://blog.youkuaiyun.com/liaoqianchuan00/article/details/23432475概述我们应该避免在主线程中作一些耗时的操作,这些操作包括文件读写,网络获取。而从android API9 2.3.3开始就提供了StrictMode为我们来监测这些耗时的操转载 2015-01-26 14:33:03 · 1517 阅读 · 0 评论 -
Android N 7.0 FileProvider 兼容适配
一.序在Android 7.0适配时,最常见,也是最重要的一点就是。当调用系统相机裁剪的时候,会出现Crash。查看Log可以很容易的发现是遇到了FileUriExposedException,这是因为当TargetSdkVersion升级到24的时候,file://在应用间传递将不再被允许。 关键字:应用间二.探索FileProvider2.1 简介引用自官网:原创 2018-02-01 10:44:54 · 1455 阅读 · 0 评论 -
ExperimentationConfigurator Fatal Exception: java.lang.NullPointerException
一.问题之前因为facebook的SDK许久未更新 我们把Facebook SDK从4.11.0更新到4.30.0 compile 'com.facebook.android:facebook-login:4.30.0' compile 'com.facebook.android:account-kit-sdk:4.30.0'遇到了很多下面的这个问题Fatal E原创 2018-02-07 11:00:15 · 1177 阅读 · 0 评论 -
Android后台优化系列-background optimization-初识低耗电模式
〇.序通常我们在写代码的时候。会注册很多隐式广播来监听一些手机中状态变化,然后在后台开启一个任务。这看起来不经意的行为,其实是对电池电量和用户体验都产生了实质的影响。所以Google在Android的一些新版本中逐步增加了对于后台的优化和限制。就是为了提升电量的续航能力。一.了解低电耗模式1.1 低耗电模式:如果用户设备未插接电源、处于静止状态一段时间且屏幕关闭,设备会进入低电耗模...原创 2018-07-10 09:11:22 · 1717 阅读 · 2 评论 -
Android Arch LifeCycle用法详解与源码解析
一.序自从Google IO 大会提出 Android Architecture Components,越来越多的使用组件加入其中。其中 Handling lifecycles with lifecycle-aware components就像我介绍了LifeCycle这个超实用组件。二.LifeCycle简介2.1为什么我们要使用LifeCycle?我们写代码的时候难免...原创 2018-07-19 11:51:33 · 5726 阅读 · 0 评论 -
Android Gradle Plugin(AGP) 升级 3.0+ ,Gradle升级4.4+过程记录
一.背景项目中原有的一些配置Android Gradle Plugin(AGP)版本是2.3.1,Gradle的版本为gradle-3.5-all,Android Studio(3.1.3)JDK-7此次的目标是升级到Android Gradle Plugin(AGP)版本是3.1.3,Gradle的版本为gradle-4.7-all,Android Stu...原创 2018-07-25 10:47:30 · 3365 阅读 · 0 评论 -
Android Studio 3.0+ 新Dex编译器D8 Desugar R8
〇.序将.class自己码转化为.dex字节码作为Apk打包的关键步骤,Google打算在Android 3.0中引入D8作为原先Dex的升级版,以及R8作为原本Proguard 压缩与优化(minification、shrinking、optimization)部分的替代品。升级Dex编译器将直接影响构建时间,.dex文件大小,运行时性能。一.D81.1 D8 的功能是把java...原创 2018-07-19 21:50:20 · 14710 阅读 · 0 评论 -
谷歌应用市场 Google Play 灰度发布(概率发布 staged rollout)策略简介
〇.引我们都知道Google Play是支持灰度发布的,也叫做概率发布。简单的说就是可以使本次发布覆盖到1%-100%的用户。那么这个策略具体是什么样的呢?抛出几个问题:如果灰度发布1%那么会不会覆盖到新用户?如果停止(halt)灰度之后,再次灰度1%还是不是同一批用户?一.简介灰度发布(staged rollout)当我们在应用市场更新App的时候可以选择灰...原创 2018-08-02 09:41:32 · 6270 阅读 · 0 评论 -
Android APK二次签名,重新签名
目标:将一个已有的APK,使用已有key再次进行签名直接上代码先对其zipalign -v -p 4 origin.apk origin_aligned.apk签名sign --ks key文件 --out release.apk origin_aligned.apk验证apksigner verify release.apk安装adb install release.apk...原创 2018-11-27 14:35:40 · 4085 阅读 · 0 评论 -
Android O 8.0 运行时权限适配方案
一.序在之前的文章聊聊Android M 6.0 的运行时权限曾提到过,Google Play开发者明年势必要努力将targetsdkversion升级到26的过程中。官网的文档:向 Android 8.0 迁移应用 已经给大家了一个升级指南。当然动态权限也是需要关注的一部分。可能有部分开发者已经将targetsdkversion升级到23了。可是当targetsdkversion升级到26原创 2018-01-05 18:12:49 · 7126 阅读 · 3 评论 -
聊聊Android M 6.0 的运行时权限
一.序1.1 背景介绍.为什么要聊这个话题呢? 从官网最新数据(2017.12.11)来看:现在大概有99.6%的用户Android版本是在4.0.3(API-15)以上并且6.0以上(API-23)的用户占比在53.5%,传送门最新Android版本分布. Android 产品经理Edward Cunningham 发表文章: Improving app sec原创 2017-12-28 17:37:26 · 1258 阅读 · 0 评论 -
Android之Android WebView常见问题及解决方案汇总
如有转载,请声明出处: 时之沙: http://blog.youkuaiyun.com/t12x3456 Android WebView常见问题解决方案汇总:就目前而言,如何应对版本的频繁更新呢,又如何灵活多变地展示我们的界面呢,这又涉及到了web app与native app之间孰优孰劣的争论. 于是乎,一种混合型的app诞生了,灵活多变的部分,如淘宝商城首页的活动页面,一集凡客诚品转载 2015-08-14 11:10:59 · 1644 阅读 · 0 评论 -
Android5.0源码-国内镜像网站上用repo下载
1.找个地方git clone git://aosp.tuna.tsinghua.edu.cn/android/git-repo.git2.把命令放到~/.bash_profile(source)3.找个文件夹 repo init -u git://aosp.tuna.tsinghua.edu.cn/android/platform/manifest -b android-5.0.2_原创 2015-08-31 16:30:59 · 3387 阅读 · 0 评论 -
Android使用charles抓包
1.下载并安状软件,官网在此:2.前题条件,电脑和手机必须在同一网段3.在Charles界面选择菜单proxy->proxy settings 勾选"Enable transparent HTTP proxying"确定代理端口,默认"8888"就可以了4.在手机的wifi节点设置里设置代理。勾选"显示高级选项",在出现的内容填入代理主机的IP(也就是你装了原创 2015-08-31 12:05:48 · 24216 阅读 · 1 评论 -
Android性能优化典范 - 第3季
Android性能优化典范 - 第3季AUG 11TH, 2015 | COMMENTSAndroid性能优化典范的课程最近更新到第三季了,这次一共12个短视频课程,包括的内容大致有:更高效的ArrayMap容器,使用Android系统提供转载 2015-08-20 12:34:23 · 1701 阅读 · 0 评论 -
PorterDuff.Mode简介
1.下面的Xfermode子类可以改变这种行为:AvoidXfermode 指定了一个颜色和容差,强制Paint避免在它上面绘图(或者只在它上面绘图)。PixelXorXfermode 当覆盖已有的颜色时,应用一个简单的像素XOR操作。PorterDuffXfermode 这是一个非常强大的转换模式,使用它,可以使用图像合成的16条Porter-Duff规则的任意一条转载 2016-11-29 20:55:25 · 1210 阅读 · 0 评论 -
愚蠢的错误 Failed to connect to 127.0.0.1 port 8888 :conection refused
Android Studio 链接GITHUB的一个错误。Push failedFailed with error:fatal:unable to access 'https://github.com/XXXX/XXXX.git/':Failed to connect to 127.0.0.1 port 8888 :conection refused其实很简单。发现是系统自动开启了原创 2017-01-12 17:59:51 · 61340 阅读 · 1 评论 -
从Daemons到finalize timed out after 10 seconds
〇.序起因,在Fabric遇到了很多BUG..出于想对于BUG的来龙去脉做进一步的了解.做了一番调查.本文也是Android Crash的防护与追踪的后续研究. 这是Fabric给出的一些link 传送门 : How to handle :java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize() ti原创 2017-12-13 16:05:42 · 8972 阅读 · 0 评论 -
Android Crash的防护与追踪
一. 序Android系统中,抛出Exception 或者 Error都会导致Crash.进而导致App强制退出.简单的来说就是因为抛出异常的代码.并未被Try catch包围..就会导致进程被杀.二. 原理从Fork进程伊始,就已经存在的UncaughtExceptionHandler(大致描述了AMS对于异常处理的过程.).1. 进程Fork之后就注册了一个UncaughtHandler//Ru原创 2017-12-21 18:12:55 · 5949 阅读 · 2 评论 -
Android中 dip dp px sp 区别
转载自:http://sifutian.iteye.com/blog/680935显示单位px和dip以及sp的区别dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。px: pixels(像素). 不同设备显示效果相同,转载 2011-08-25 11:05:12 · 1453 阅读 · 0 评论 -
TextView结合SpannableString使用大全
super.onCreate(savedInstanceState); TextView txtInfo = new TextView(this); SpannableString ss = new SpannableString("红色打电话原创 2011-07-22 19:02:08 · 10422 阅读 · 2 评论 -
Android 关于 如何使用外界导入的数据库文件
package com.jamin;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOExcept原创 2011-08-02 11:50:45 · 2395 阅读 · 0 评论 -
SQLite学习笔记(一)
转自:http://www.cnblogs.com/hicjiajia/archive/2011/01/25/1944578.html一.如何获取SQLite最新版本官方站点:http://www.sqlite.org/从http://www.sqlite.org转载 2011-08-04 14:28:52 · 902 阅读 · 0 评论 -
SQLite学习笔记(二)
转自:http://www.cnblogs.com/hicjiajia/archive/2011/01/25/1944581.html一.建立数据库sqlite3.exe test.db 二.双击sqlite-3_6_16目录下的程序sqlite3.exe,即转载 2011-08-04 14:30:09 · 3362 阅读 · 0 评论 -
SQLite学习笔记(三)
http://www.cnblogs.com/hicjiajia/archive/2011/01/25/1944583.html一.如何备份数据库先打开数据库test.dbE:\sqlite\tool\sqlite-3_6_22>sqlite3 D:\T转载 2011-08-04 14:31:34 · 1194 阅读 · 0 评论 -
Android TextWatcher监控EditText中的输入内容并限制其输入字符个数
布局中EditText在android布局中经常用到,对EditText中输入的内容也经常需要进行限制,我们可以通过TextWatcher去观察输入框中输入的内容,作个笔记。主布局:转载 2011-05-10 16:05:00 · 1538 阅读 · 0 评论 -
Ubuntu 8.04下编译Android源码全过程
<br />转自:http://blog.youkuaiyun.com/dongfengsun/archive/2009/10/16/4679902.aspx<br /> <br />一、获取Android源代码<br />Git是Linux Torvalds(Linux之父)为了帮助管理Linux内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。在集中式版本控制系统中只有一个仓库(Repository),许多个工作目录(Working Copy),而在Gi转载 2011-05-06 13:46:00 · 628 阅读 · 0 评论 -
android自带图片
<br />这里还有一些别的图片。http://www.since2006.com/android/2.1-drawables.php<br /> <br /> <br /> <br /> <br /> <br /> <br />This is a list of resources in Android 2.1's android.R.drawable that might be useful as icons in your Android applications. You can use them转载 2011-04-12 21:52:00 · 2141 阅读 · 0 评论 -
MAKE Android SDK
<br />前提条件:<br />1、编译源码的各种工具已经安装完毕;<br />2、进入Android源码的根目录,如:/work/android2.1/<br /> <br />编译命令:make update-api; make PRODUCT-sdk-sdk;<br />命令说明:<br /> 1、make update-api #如果你在Android源码中添加了自定义的包、类、方法或者你修改了Android源码中标识为@hide的方法、类,你需要这些内容对Application可见并原创 2011-04-12 22:24:00 · 2737 阅读 · 1 评论 -
详解 Android 的 Activity 组件
<br />转自:http://jiajun.javaeye.com/blog/585753<br /><br /><br />Activity 的生命周期<br />和 J2ME 的 MIDlet 一样,在 android 中,Activity 的生命周期交给系统统一管理。与 MIDlet 不同的是安装在 android 中的所有的 Activity 都是平等的。<br />Activity 的状态及状态间的转换<br />在 android 中,Activity 拥有四种基本状态:Active/Runi转载 2011-04-12 21:41:00 · 551 阅读 · 0 评论 -
Android Menu介绍
<br />options menu: <br />按MENU键来显示, 在屏幕最下面最多显示6个菜单选项(icon menu,不可以有checkable),如果多于6个的其他的会以“more” icon menu来调出(expanded menu)。<br />通过activity的onCreateOptionsMenu来生成,<br />只能在menu第一次生成时调用;想改变optionsmenu,<br />只能在onPrepareOptionsMenu里来实现;处理 op原创 2011-04-14 16:46:00 · 1617 阅读 · 0 评论 -
android语言国际化的实现
<br />onCreateOptionsMenu(Menu menu) 这个方法,只会被调用一次,<br /><br /> 可是有一个特殊情况,就是当我们把程序挂到后台,然后进入设置更改语言的时候,onCreateOptionsMenu(Menu menu)这个方法会再次被调用。<br /><br /><br /> android在选择不同的语言之后会调用IActivityManager的实例updateConfiguration,同时将 Configuration对象中的Locale转载 2011-04-14 15:04:00 · 1027 阅读 · 0 评论