android 基础
hy1308060113
这个作者很懒,什么都没留下…
展开
-
Android实现刘海全屏显示
/****/ /** * 实现留海屏幕全屏 */ if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { WindowManager.LayoutParams lp = getWindow().getAttributes(); ...原创 2019-10-23 16:49:28 · 1238 阅读 · 0 评论 -
java中正则表达式的了解与实践记录
Pattern pattern = Pattern.compile("^\\S+/q/");Matcher matcher = pattern.matcher(resultString);String qrcode="";while(matcher.find()){ String path=matcher.group(); System.out.println(matcher....原创 2018-10-18 14:41:24 · 127 阅读 · 0 评论 -
android 高德地图的接入的demo
import android.content.Context;import android.content.Intent;import android.graphics.BitmapFactory;import android.graphics.Color;import android.os.Bundle;import android.support.annotation...原创 2018-10-18 13:40:56 · 1296 阅读 · 0 评论 -
Android 手势监听demo
package com.shengfang.demo.testdemo;import android.content.Context;import android.view.GestureDetector;import android.view.MotionEvent;import android.view.View;/** * 实现监听上下左右滑动的事件,哪个view需要的时候...原创 2018-10-18 13:38:26 · 673 阅读 · 0 评论 -
xutils get方式获取数据
//得到home页的新闻public void getNewsData(){ RequestParams params =new RequestParams(Ipconfig.homeNewsUrl); //params.setSslSocketFactory(...); // 设置ssl params.addQueryStringParameter("page", "...原创 2018-10-08 10:04:21 · 369 阅读 · 0 评论 -
Android 7.0及以上的设备无法在Eclipse上打印日志的解决办法
具体步骤如下: 在Android安装的SDK\tools\lib文件下找到ddmlib.jar 在Eclipse安装目录中,进入Eclipse\configuration\org.eclipse.osgi查找ddmlib.jar 使用 1 的ddmlib.jar替换 2 的ddmlib.jar 重启Eclipse,问题解决...原创 2018-09-06 09:21:05 · 532 阅读 · 1 评论 -
将奔溃日志写进SD卡里面
在applicaiton的oncreat()方法里面实例化即可CrashHandler.getInstance().init(this);public class CrashHandler implements Thread.UncaughtExceptionHandler { public static final String TAG = "CrashHan...原创 2018-08-30 15:32:35 · 163 阅读 · 0 评论 -
Android 实现类似于淘宝头条的热点滚动推荐
其实原理很简单。使用ViewFlipper,然后把要滚动的控件添加进去就可以了,当然首先得感谢各位前辈先写好底层的东西~~~~步骤:第一现在布局文件里面定义布局,如下所示,可根据需要自己定义ViewFlipper<ViewFlipper android:id="@+id/zy_fragment_vf" android:layout_width="match_pa...原创 2018-08-17 10:34:54 · 1007 阅读 · 0 评论 -
adb提示已停止工作问题的解决方案
出现这个问题,多半是adb默认端口被那个无聊的软件给占用了,无奈内心烦躁的我,决定还是不要偷懒,把解决方法记录下来,方便下次出现问题时可以直接看,不用在电脑上东找西找的~~~~第一步,当然先查看adb的端口是哪一个(1) 进入到dos端口 cd 到adb安装目录,一般都在sdk下的platform-tools目录下(2)执行 adb kill-server ...原创 2018-08-08 12:34:22 · 10675 阅读 · 1 评论 -
自定义圆形背景RelativeLayout
最近公司项目爱用到圆角背景的RelativeLayout,一般圆角背景的实现思路无非就是两种,第一种用.xml实现,需要用到.9图片,防止图片变形,如果要改变背景颜色的话,不可避免的要找美工妹子作图,看着我的美工妹子一脸幽怨的小表情,我打算还是用第二种方法吧,就是自已用代码绘制一个,要改变角度,要改变颜色,改下设置就可以了,轻松又便捷,简单又方便,妈妈再也不用担心我的明天了~~~~impo...原创 2018-10-28 14:57:57 · 1041 阅读 · 0 评论 -
自定义webview 使之不能滑动
package com.shengfang.procuratorate.View;import android.content.Context;import android.util.AttributeSet;import android.webkit.WebView;public class MyWebview extends WebView { public MyWebv...原创 2018-10-23 11:09:52 · 743 阅读 · 0 评论 -
Android 事件分发机制
1. 基础认知1.1 事件分发的对象是谁?答:点击事件(Touch事件)定义 当用户触摸屏幕时(View 或 ViewGroup派生的控件),将产生点击事件(Touch事件)Touch事件的相关细节(发生触摸的位置、时间等)被封装成MotionEvent对象事件类型(4种)事件类型 具体动作 MotionEvent.ACTION_DOWN 按下View(所...转载 2018-11-09 14:15:10 · 139 阅读 · 0 评论 -
eclipse 使用NDK步骤记载
1.创建Android工程,用native申明本地方法形如:public native String helloFromC();2.在工程文件中新建jni(名字固定,不可更改)文件,并新建.c文件。 jni规定在.c文件里的方法名必须为 Java_调用本地方法类所在的包名_类名_方法名。例如我在android文件里面创建的本地方法为public native String...原创 2019-02-18 13:24:04 · 198 阅读 · 0 评论 -
socket通信原理
https://www.cnblogs.com/coder-wzr/p/7838553.html转载 2018-11-28 16:32:30 · 223 阅读 · 0 评论 -
Android中Activity启动模式详解
在Android中每个界面都是一个Activity,切换界面操作其实是多个不同Activity之间的实例化操作。在Android中Activity的启动模式决定了Activity的启动运行方式。 Android总Activity的启动模式分为四种:Activity启动模式设置: <activity android:name=".MainActivity" andr...翻译 2018-11-12 10:30:05 · 199 阅读 · 0 评论 -
单例模式
单例模式单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。注意:1、单例类只能有一个实例。 2、单例类必须自己创建自己的唯一...翻译 2018-11-08 17:33:28 · 127 阅读 · 0 评论 -
px 与 dp, sp换算公式记录
px 与 dp, sp换算公式?PPI = Pixels per inch,每英寸上的像素数,即 "像素密度"xhdpi: 2.0 hdpi: 1.5 mdpi: 1.0 (baseline) ldpi: 0.75drawable-ldpi、drawable-mdpi、drawable-hdpi 精度分别为低、中(android默认)、高。对应的图片大小为:36x36、48x48...转载 2018-11-05 09:32:45 · 296 阅读 · 0 评论 -
android 性能优化 -- 启动过程 冷启动 热启动
一、应用的启动方式 通常来说,启动方式分为两种:冷启动和热启动。 1、冷启动:当启动应用时,后台没有该应用的进程,这时系统会重新创建一个新的进程分配给该应用,这个启动方式就是冷启动。 2、热启动:当启动应用时,后台已有该应用的进程(例:按back键、home键,应用虽然会退出,但是该应用的进程是依然会保留在后台,可进入任务列表查看),所以在已有进程的情况下,这种启动会从已有的进程...翻译 2018-11-07 17:16:02 · 160 阅读 · 0 评论 -
android 百度推送的集成
/* * Push消息处理receiver。请编写您需要的回调函数, 一般来说: onBind是必须的,用来处理startWork返回值; *onMessage用来接收透传消息; onSetTags、onDelTags、onListTags是tag相关操作的回调; *onNotificationClicked在通知被点击时回调; onUnbind是stopWork接口的返回值回调 ...原创 2018-11-07 10:04:33 · 775 阅读 · 0 评论 -
Android 画笔 paint 学习记录
最近在学习自定义view,不学不知道,一学吓一跳,原来我是个文盲,内心有点小忧伤,我还得慢慢爬啊,废话不多说,还是默默的打我的代码吧。1.setStyle(Paint.Style style) 设置画笔样式,取值三个,分别如下“”Paint.Style.FILL :填充内部。Paint.Style.FILL_AND_STROKE :填充内部和描边。Paint.Style.STROKE...原创 2018-08-15 13:14:37 · 242 阅读 · 0 评论 -
Android 自定义view(1)
Android自定义控件需要一些使用到自定义的属性,我们需要在app\src\main\res\values下新建一个xml文件名字为attrs也就是属性文件,在文件里面我们要使用declare-styleable来声明一个我们自己的格式的一些属性<?xml version="1.0" encoding="utf-8"?><resources> <de...原创 2018-08-07 12:15:56 · 150 阅读 · 0 评论 -
将asset文件下的内容复制到sd卡上面
public class FileUtils { private static FileUtils instance; private static final int SUCCESS = 1; private static final int FAILED = 0; private Context context; private FileOperat...转载 2018-08-02 15:51:57 · 262 阅读 · 0 评论 -
httpclient以post方式访问服务器
访问服务器的原理都差不多,前面的已经说过了,忘记的话再去看一遍。 new Thread(){ public void run() { try { String path = "http://192.168.1.100:8080/login?"; System.out.println(path); ...原创 2018-05-07 17:43:31 · 605 阅读 · 0 评论 -
httpclient以get方式访问服务器
new Thread(){ public void run() { try { String path = "http://192.168.1.100:8080/login?"; path = path+"number="+URLEncoder.encode(number, "UTF-8")+"&pwd="+URLEncoder....原创 2018-05-07 11:18:13 · 449 阅读 · 0 评论 -
post方式访问服务器及与get方式的区别
post请求服务器原理:首先要设置请求方式,然后设置要带的参数,设置content-type和content-length,然后告诉服务器要写数据了,最后将数据写进请求体中。post的要复杂一样,但是安全。new Thread(){ public void run() { try { URL url = new URL(path); HttpUR...原创 2018-05-04 17:00:06 · 2232 阅读 · 0 评论 -
用get方式提交数据到服务器
本文原理:将数据拼接在访问的服务器地址后面,形式如下http://192.168.1.100:8080/web_login/login?number=123&pwd=123其中number和pwd是要上传的数据,然后设置请求方式为GET,访问服务器后拿到服务器返回结果。最后handler更新UInew Thread(){ public void run() { tr...原创 2018-05-04 11:47:57 · 3562 阅读 · 0 评论 -
自定义imageview 设置url图片资源
原理:定义一个类集成ImageView ,然后开启一个线程去获取网络资源,然后用handler更新UI。public class MyImageView extends ImageView { protected static final int SUCCESS = 0; protected static final int ERROR = 1; public MySmartImageView(C...原创 2018-05-04 11:12:05 · 5004 阅读 · 0 评论 -
隐藏webview中的文本
思路:将整个文档获取到,然后更改网页的结构,找到你想要隐藏的元素id,class。将其替换成html.replace("id=\"login\"", "style=\"display:none;\"");即可。 private void getHtml_data(final String Url) { HttpUtils httpUtils = new HttpU...原创 2018-08-16 16:41:38 · 609 阅读 · 0 评论 -
使用开源的框架async_http_client发送post请求
String path = "http://192.168.1.100:8080/login"; AsyncHttpClient client = new AsyncHttpClient(); RequestParams params = new RequestParams(); // number=123&pwd=123 params.add("number", numb...原创 2018-05-10 15:52:08 · 789 阅读 · 0 评论 -
使用开源的框架async_http_client发送get请求
String path = "http://192.168.1.100:8080/login/login?number="+number+"&pwd="+pwd; AsyncHttpClient client = new AsyncHttpClient(); client.get(path, new AsyncHttpResponseHandler() { //请...原创 2018-05-10 15:45:18 · 159 阅读 · 0 评论 -
反编译解析生成的Java数据
arr是以UTF-8生成的的,所以解析的时候也要以UTF-8解析原创 2018-05-07 17:57:29 · 117 阅读 · 0 评论 -
使用xutils下载服务器文件文件
public class MainActivity extends Activity { private EditText ed_path; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.act...原创 2018-05-21 15:35:44 · 1071 阅读 · 0 评论 -
Android banner+RecyclerViewd连滚
布局:主布局<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="原创 2018-07-24 12:01:17 · 1059 阅读 · 0 评论 -
Android 实现banner+listview不连滚的
布局:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:orientation="vertica原创 2018-07-24 11:57:09 · 526 阅读 · 0 评论 -
android 定时器
private int time = 1000; //每隔1s执行一次.Handler handler = new Handler(); handler.postDelayed(runnable, time); // 在初始化方法里. Runnable runnable = new Runnable() { @Override public void run...原创 2018-07-05 13:29:48 · 150 阅读 · 0 评论 -
用命令行查看Android数据库记录
打开doc窗口。执行adb shell 命令然后 执行 cd /data/data 执行 ls 找到应用包名和 cd 到该包名下执行 ls命令可以看到一个database目录cd 到database目录下查看该目录下的文件执行命令 :sqlite 数据库名 打开数据库 结果如下:执行查询命令,可查看数据库信息,chcp 936 把当前dos窗体编码方式变成gbk,如果chcp 6500...原创 2018-05-24 11:10:09 · 2835 阅读 · 0 评论 -
android 数据库的简单使用方法
(1)自定义一个类继承SQLiteOpenHelperpublic class MyOpenHelper extends SQLiteOpenHelper { public MyOpenHelper(Context context) { /** * name 数据库的名字 * factory 游标工厂 * version 版本 */ super(context, "Acc...原创 2018-05-24 10:16:19 · 302 阅读 · 0 评论 -
android home 键的监听方法记录
(1)在activity里面重载这个方法@Override protected void onUserLeaveHint() { Log.d("aeon","onUserLeaveHint"); super.onUserLeaveHint(); } (2)监听home键广播public class HomeListener { static...原创 2018-05-25 16:42:53 · 518 阅读 · 0 评论 -
多线程断点下载原理
首先向服务器请求得到下载的文件大小,在客户端创建一样大小的文件,然后计算每个线程下载的开始索引和结束索引。原创 2018-05-15 10:51:23 · 355 阅读 · 0 评论 -
如何得到应用的包签名?
方法如下:private void getSign() { char[] HEXADECIMAL = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; PackageManager pm = getPackageMan...原创 2018-05-08 15:00:46 · 862 阅读 · 0 评论