Android
文章平均质量分 50
UFO00001
这个作者很懒,什么都没留下…
展开
-
Android 广播监听网络状态缺陷
广播注册两种方式:静态(AndroidManifest.xml文件中)动态(代码register)5.0之前 我们都是广播BroadcastReceiver 注册跟网络变化相关的广播 然后判断是连接还是断开 这种方法非常方便 但随着Android的版本迭代 在权限上更加谨慎 广播的方式显得不优雅7.0 之后移除了三项隐式广播 因为隐式广播会在后台频繁启动 已经注册监听这些广播的应用 删...原创 2019-03-28 14:39:23 · 949 阅读 · 0 评论 -
一个截屏动态图制作工具
recordit点击上面链接 下载Mac或Windows版即可制作原创 2017-05-23 11:38:15 · 2991 阅读 · 0 评论 -
Android MVP
MVP Model View Presenter1. MVC Model View Controller关于探讨MVC思想的早期文章:The original MVC reports (1978年)Model:数据,包括数据本身和处理数据的逻辑。View :数据的表现形式,将数据及数据的变化呈现给用户。Controller:数据的获取,如用户的输入,将用户的原创 2017-05-11 16:00:07 · 657 阅读 · 0 评论 -
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(ja
查了一大会原因是系统在解析XML的时候出错,最后才发现 XML文件中 写成小写的 了 ...... 醉啦原创 2017-05-11 12:40:48 · 4696 阅读 · 0 评论 -
Unsupported method: AndroidProject.getPluginGeneration()
关闭Instant Run原创 2017-04-06 16:03:42 · 360 阅读 · 0 评论 -
Android状态栏动态显示和隐藏
非常简单,仅做记录备用。获取到View后进行属性设置就好。/* View类提供了setSystemUiVisibility和getSystemUiVisibility方法, 这两个方法实现对状态栏的动态显示或隐藏的操作,以及获取状态栏当前可见性。 */setSystemUiVisibility方法传入的实参分析:setSystemUiVisibility(int visi原创 2017-04-06 11:01:13 · 378 阅读 · 0 评论 -
Android 数据存储详解(5种)
1.sharedpreference简介:保存检索基本数据类型(boolean float int long string)的键值对(基于XML文件存储的“key-value”)存储位置:data/data/程序包名/shared_prefs目录下 数据读写://写入SharedPreferences mySharedPreferences= getShare原创 2017-04-05 16:50:41 · 429 阅读 · 0 评论 -
Android 在一个Activity中刷新另外一个Activity的UI
1. 通过声明要刷新的activity(Activity_A)为静态变量,然后在一个activity(Activity_B)中直接调用Activity_A中的刷新方法 在Activity_A中声明静态变量: public static Activity_A instance = null; Activity_B 中直接调用Activity_A中的刷新方法:原创 2017-03-16 16:53:07 · 4647 阅读 · 0 评论 -
Android WebView 缓存
一. 两种缓存类型:页面缓存:加载一个网页时的html、JS、CSS等页面或者资源数据,这些缓存资源是由于浏览器 的行为而产生,开发者只能通过配置HTTP响应头影响浏览器的行为才能间接地影响到这些缓存数据。 而缓存的索引放在:/data/data//databases 对应的文件放在:/data/data/package_name/cache/webviewCacheChromunm下数据原创 2017-03-16 16:14:32 · 1236 阅读 · 0 评论 -
透明Activity(Android)
1.自定义themestyle name="TranslucentTheme"> item name="android:windowNoTitle">trueitem> item name="android:windowIsTranslucent">trueitem> item name="android:windowContentOverlay">@nullite原创 2017-03-15 17:58:54 · 391 阅读 · 0 评论 -
OKHttp 同步请求
一般在UI线程(主线程)中调用网络请求不可取,但有时候也会用到,比如更新UI(应该还有更好的解决办法) 此篇仅以记录 OKHttp 同步请求:private Handler requestHandler_post = new Handler() { @Override public void handleMessage(Message msg) { sw原创 2017-03-15 12:00:29 · 1063 阅读 · 0 评论 -
Error: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException
.9 图片导致(项目里是这个原因,当然其他特定行为也可能导致此错误)Studio对于资源文件检查非常的严格,还有9patch图的格式等, 所以要资源文件和名称必须严格一致, 一 一对应才可以解决:1.用严格的 *.png格式的图片替换进去或:2.在build.gradle中添加android { ...... aaptOptions.crunche原创 2017-03-31 17:24:02 · 710 阅读 · 0 评论 -
自动弹出数字键盘 EditText(Android) UITextField(iOS)
iOS可以这么设置:let userName =UITextField(frame: CGRectMake(0, 100, 380, 50));userName.keyboardType =UIKeyboardType.NumberPadAndroid则是:EditText.setInputType(EditorInfo.TYPE_CLASS原创 2017-03-15 10:34:33 · 893 阅读 · 0 评论 -
Android一些要注意的漏洞
Android常见漏洞漏洞名称: Log敏感信息泄露漏洞描述: 程序运行期间打印了用户的敏感信息,造成泄露修改建议: 建议禁止隐私信息的log 漏洞名称: web https校验错误忽略漏洞漏洞描述: 漏洞可导致中间人攻击修改建议: 建议不要忽略ssl认证错误 漏洞名称: sql注入漏洞漏洞描述: 漏洞可能导致用户数据原创 2017-04-10 14:44:20 · 724 阅读 · 0 评论 -
WindowManager.LayoutParams 属性
public static classWindowManager.LayoutParamsextends ViewGroup.LayoutParamsimplements Parcelablejava.lang.Object ?android.view.ViewGroup.LayoutParams ?原创 2017-04-10 12:37:03 · 875 阅读 · 0 评论 -
Android 反混淆编译
https://github.com/CalebFenton/dex-oracle正在总结...原创 2017-03-23 17:57:47 · 1351 阅读 · 0 评论 -
Error:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:
问题描述问题原因: 资源不对 很多种原因 我这里的是把.9图片改了一下不对了解决办法:1.重新制作.9图 2.build.gradle中添加android { ... aaptOptions.cruncherEnabled = false aaptOptions.useNewCruncher = false ... }原创 2017-05-04 19:37:30 · 1066 阅读 · 0 评论 -
一个AndroidDemo(百分比 照片 广播 通知 沉浸式标题栏 对话 退出 .9 聊天等等)
Github链接原创 2017-05-03 19:37:51 · 417 阅读 · 0 评论 -
Android APK优化
SVGStringTintso库配置移除无用resource资源源代码混淆资源压缩webp压缩资源 res资源混淆待补充...原创 2019-03-26 10:23:48 · 440 阅读 · 0 评论 -
Android 获取扫码枪的扫描内容
思路:重写Activity的dispatchKeyEvent()方法 将获取到的内容自定义处理 然后再回调得到扫描内容import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.KeyEvent;import android.widget.Toast;...原创 2019-01-03 16:24:32 · 3978 阅读 · 3 评论 -
一个图标下载网站(自用)
地址:http://www.iconfont.cn/collections/detail?cid=29原创 2017-05-18 16:03:15 · 971 阅读 · 0 评论 -
Android 扫描二维码条形码的链接
Android 扫描二维码条形码转载 2017-08-03 14:51:14 · 662 阅读 · 0 评论 -
2017上半年一些Android库(记录)
2017 Android库1.Matisse这是一个漂亮的本地图片、视频选择器。其主要功能有:选择包括JPEG、PNG、GIF格式的图片和 MPEG、MP4 格式的视频支持自定义主题,包括两个内置的主题不同的图片加载器定义自定义过滤规则在 Activities 和 Fragments 中操作良好你可以在代码库的 wiki 中发现更多。原创 2017-06-22 16:52:47 · 1055 阅读 · 0 评论 -
一篇React Native 的文章
React Native 是最近非常火的一个话题,介绍如何利用 React Native 进行开发的文章和书籍多如牛毛,但面向入门水平并介绍它工作原理的文章却寥寥无几。本文分为两个部分:上半部分用通俗的语言解释了相关的名词,重点介绍 React Native 出现的背景和试图解决的问题。适合新手对 React Native 形成初步了解。(事实证明,女票能看懂这段)下半部分则通过源转载 2017-06-02 17:51:05 · 556 阅读 · 0 评论 -
通过广播实现网络监听及判断网络类型
权限设置:uses-permission android:name="android.permission.INTERNET" />uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>代码:import android.content.BroadcastReceiver;import an原创 2017-04-27 16:01:14 · 535 阅读 · 0 评论 -
Android运行时权限简介及判断
在AndroidManifest中声明权限后,如果用户在低于6.0系统设备上安装该程序,安装时就会弹出提示框提醒,用户可以清楚知道该程序一共申请了哪些权限,从而决定是否安装此程序,如果安装了也可以在一些手机自带的手机管家中可以设置打开关闭这些权限在6.0系统后加入了运行时权限 和苹果挺像的 用户可以在使用时进行授权。注:不是所有都是在运行时授权,普通权限系统自动授权,危险权限手动操作。原创 2017-05-08 17:10:44 · 1666 阅读 · 0 评论 -
Android开发权限汇总
1.android.permission.WRITE_USER_DICTIONARY 允许应用程序向用户词典中写入新词 2.android.permission.WRITE_SYNC_SETTINGS 写入Google在线同步设置 3.android.permission.WRITE_SOCIAL_STREAM 读取用户的社交信息流 4.android.permission原创 2017-04-06 17:17:26 · 1284 阅读 · 0 评论 -
Android JSON解析
JSON数据解析方法主要有:JSONObject GSON Jackson FastJSON 前两种方法用的最多JSONObject //json数据 [{"number":"1","name":"one"},{"number":"2","name":"two"}]try { JSONArray jsonArray = new JSONArray("json原创 2017-05-08 19:04:32 · 318 阅读 · 0 评论 -
Android全局获取Context
在弹出Toast 启动活动 发送广播 操作数据库 使用通知等等时都需要Context如果操作在活动中进行是很简单的,因为活动本身就是一个Context对象但是当逻辑代码脱离了Activity类,此时使用Context就需要一些技巧了:我们可以定制一个自己的Application类,以便管理程序内一些全局状态信息,比如全局Context代码如下:public class MyAp原创 2017-05-05 11:49:50 · 659 阅读 · 0 评论 -
Android Intent传递对象 Serializable & Parcelable
问题描述:Intent 可以 启动活动 启动服务 发送广播 在用Intent 的putExtra()方法传递的数据类型是有限的 比如不好传递一个自定义对象:解决办法:两种方式: Serializable & Parcelable 1.Serializable Serializable :序列化,表示将一个对象转换成可存储可传输的状态,序列化后的对象可以在网络上传原创 2017-05-05 13:47:56 · 457 阅读 · 0 评论 -
Android自定义日志打印 开发时打印正式上线时不打印
import android.util.Log;/** * Created by UFO. * * 说明: * 改变代码中level的值,就可以控制日志的打印范围: * 当level等于VERBOSE就可以把所有日志打印出; * 当level等于WARN时就可以只打印警告以上级别的日志; * 当level等于NOTHING时就可以把所有打印日志屏蔽掉原创 2017-05-05 14:10:32 · 884 阅读 · 0 评论 -
Android数据持久化数据存储
三种:文件存储 SharePreference存储 数据库存储 当然 除了这三种还可以将数据存储在SD卡 网络上本文主要探究前三种存储方式。一. 文件存储将所有数据原封不动的保存到文件当中适用于: 存储一些简单的文本数据或二进制数据如何做: 通过 Context类的 openFileOutput() 方法 两个参数: 1.文件名 不可以包含路径,默原创 2017-05-05 19:06:42 · 376 阅读 · 0 评论 -
Android 网络请求汇总
Android网络请求三篇OKHttp使用教程OKHttp官网...持续更新完善转载 2017-03-07 12:04:16 · 548 阅读 · 0 评论 -
Mac AndroidStudio .9图片制作
方法一:打开控制器 输入 open ~/Library/Android/sdk 回车 打开了sdk文件夹 未找到.9工具(Windows有 而 Mac没有) 还未解决方法二:找到所需的png格式图片 右键: 点击Create 9-Patch file然后:在选中的图片上点击做出自己想要的样子:如:再次编译,如果出现了 错误:Error:Executio原创 2017-05-04 19:26:34 · 3399 阅读 · 0 评论 -
MAC Android APK反编译工具及使用方法
1.下载此工具并安装 2.选择目录 点击执行即可原创 2017-03-20 14:11:23 · 1556 阅读 · 0 评论 -
Android Studio 百度地图定位、轨迹及所在位置与标注marker的距离
1. 在百度地图开放平台注册应用 获得应用AK 如果获取SHA1不对,可以下载MCodeCheck.apk 安装在测试手机上查看SHA12. 在百度地图开放平台下载所需的SDK3. 将BaiduLBS_Android.jar 放在libs下,将armeabi armeabi-v7a arm64 x86 x86_64 文件夹copy至 jniLibs文件夹下4. 在Andro原创 2017-03-21 19:36:11 · 4538 阅读 · 0 评论 -
net::ERR_CACHE_MISS (android)
报错:net::ERR_CACHE_MISS解决:uses-permission android:name="android.permission.INTERNET"/>uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>原创 2017-03-06 10:41:57 · 1681 阅读 · 0 评论 -
Error:Execution failed for task ':app:packageDebug'...
在集成极光推送后测试时出现这个问题。初步原因 可能是因为一些包太旧了解决办法 需要在Android studio 里面新增一些代码兼容老的版本在build.gradle中的 android{ ... } 中 添加:packagingOptions { exclude 'META-INF/DEPENDENCIES.txt' exclude 'META-INF/原创 2017-03-09 16:17:06 · 924 阅读 · 0 评论 -
(临时)JSON 解析链接
链接1链接2后续总结整理原创 2017-03-08 15:06:48 · 488 阅读 · 0 评论 -
Android 子线程中使用Toast
Looper.prepare();Toast.makeText(Activity.this,"要toast的内容",Toast.LENGTH_SHORT).show();Looper.loop();原创 2017-03-08 15:04:43 · 432 阅读 · 0 评论