自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

转载 Nginx实现集群高可用

大家知道NGINX作为反向代理服务器可以实现负载均衡,同时也可以作为静态文件服务器,它的特点就是并发支持大,单机可同时支持3万并发,现在很多网站都把NGINX作为网关入口来统一调度分配后端资源。但是如果NGINX宕机了,就会导致整个后台服务无法使用;或者当并发量真的非常大时,达到十万级别时,一台NGINX还是有极限的,所以这个时候就需要针对NGINX进行主从备份保证服务高可用、集群来分担并发...

2019-07-27 16:50:49 411

原创 Nginx 作为静态文件服务器

1.搭建静态资源服务器我电脑上的work文件夹下面有很多图片,我想通过nginx搭建静态资源服务器,通过在地址栏输入ip+port的方式完成目录的映射找到nginx安装目录,打开/conf/nginx.conf配置文件,添加一个虚拟主机添加监听端口、访问域名重点是添加location,映射-URL:/work/;注意:如果当前serv...

2019-07-27 16:30:13 651 1

原创 Spring Batch 基础(一)

1. 简介Spring Batch 用于大数据量的批处理任务,是一种轻量级的批处理框架。当数据量超过百亿级时,还是要用海量数据处理框架handoop。Spring Batch具有简便、轻盈、容易集成等优点,而且提供了多种Writer 和 Reader借口,让开发者专注于业务处理,Spring Batch负责流程。业务场景: 定期执行、消息驱动、并行处理、手动重启、顺序执行。特点:轻量级、高...

2019-07-13 10:56:16 198

原创 C语言 常用函数总结

string.hchar *strcpy(char *s1,const char *s2); 该函数把s2指向的字符串(包括控制符)复制到s1指向的位置,返回 值是s1.char *strncpy(char *s1,const char *s2, size_t n); 该函数把s2指向的字符串复制到s1指向的位置,复制的字符数不超过n个。返回值s1。空字符后的字符不被复制。如果源字符

2017-06-30 17:06:14 309

转载 linux常用头文件

1、 Linux中一些头文件的作用: assert.h:ANSI C。提供断言,assert(表达式)glib.h:GCC。GTK,GNOME的基础库,提供很多有用的函数,如有数据结构操作函数。使用glib只需要包含glib.hdirent.h:GCC。文件夹操作函数。struct dirent,struct DIR,opendir(),closedir(),readdir(),readdir64

2017-06-29 13:23:22 563

原创 Jni of linux platform

linux下使用JNI小记,网上有很多例子,但在我理解的基础上小记一下:step 1: 首先,编写你的java程序,但要在静态初始化列表中 load你要使用的动态库,注意去掉动态库的lib以及.so后缀名。import java.util.*;import java.io.*;public class Student { private String name; private i

2017-06-08 16:08:13 222

原创 websites

Android Networking: http://www.vogella.com/tutorials/AndroidNetworking/article.htmlAndroid 源码大安卓: http://www.dandroid.cn/?cat=94 Google Samples: https://github.com/googlesamplesalmo 简书: http://w

2017-06-05 16:20:34 326

原创 Ubuntu内核编译教程-修改内核(4.5位例)

实验环境:Ubnuntu 64位(推荐使用14.04)+XshellLinux云服务器很好用的,用来编译内核性能也不错。本文介绍最基本的内核编译方法,为了方便,所有操作均在root用户下进行。如果不是root用户可以使用su命令切换到root用户。注:使用xshell的时候最好把这一项给关闭了(工具——选项——高级)一、环境准备1.准备linux源码和补丁,可以在官网(http://www.kern

2017-05-17 17:26:04 674

原创 The basic of Loaders

Loaders 具有以下特性: 1. 对于每个Activity或者Fragment可用,在每个Activity或者Fragment中,可以具有多个Loaders,但只有一个LoaderManager来管理。 2. 获取数据时是异步的。 3. Loaders可以检测数据的改变,并自动传递该数据。 4. 当配置改变需要重新构造Loaders时,Loaders可以利用先前的数据结果,没必要重新获取

2017-05-15 11:19:22 187

原创 The basic of Fragment

最近一直在看官方文档,觉得不能一直看,还是捡重要的记一下吧。 Fragment是官方提倡使用的组件,具有非常好的灵活性和复用性。尤其在一些需要支持tablet和phone的情况下,是提高Application的适配性的途径之一。Fragment必须要嵌入到Activity中使用,它具有自己的life cycle(受父Activity的影响)和input event,具有自己的back stack,

2017-05-13 14:03:14 215

转载 FileProvider无法获取外置SD卡问题解决方案 | Failed to find configured root that contains(转)

随着Android版本越来越高,Android官方对用户数据保护力度也越来越大。Android提供FileProvider类来供应用之间共享数据。如: … FileProvider所支持的几种path类型从Android官方文档上可以看出FileProvider提供以下几种path类型: 该方式提供在应用的内部存储区的文件/子目录的文件。它对应Context.getFi

2017-04-21 16:19:16 1791

转载 android的路径获取(转)

一.getCacheDir、getCacheDirgetCacheDir()方法用于获取/data/data//cache目录 getFilesDir()方法用于获取/data/data//files目录 二.getExternalFilesDir、getExternalCacheDir  应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。大部分应用是直接在S

2017-04-20 10:58:27 796

转载 transparent Status bar and navigation bar(转)

与StatusBar和NavigationBar相关的东西有两种,一是控制它们的显示与隐藏,二是控制它们的透明与否及背景。在2.3及以前,StatusBar只能显示与隐藏,即全屏模式,通过WindowManager.LayoutParams.FLAG_FULLSCREEN来实现:getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCRE

2017-03-21 13:59:38 463

转载 关于 Android 平台开发相关的有哪些推荐书籍?

转自:http://www.zhihu.com/question/19579609 作者:Shan Huang 链接:http://www.zhihu.com/question/19579609/answer/12306890 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。学习android开发,我不建议花太多时间在书籍上,因为android的版本更新实在太

2017-03-06 15:23:42 721

转载 task of activity(一)

一、前言Activity,安卓四大组件之一。每个 Activity 都会获得一个用于绘制其用户界面的窗口。窗口通常会充满屏幕,但也可小于屏幕并浮动在其他窗口之上。 一个应用通常由多个彼此松散联系的 Activity 组成。每次新 Activity 启动时,前一 Activity 便会停止,但系统会在堆栈(“返回栈”)中保留该 Activity。 当新 Activity 启动时,系统会将其推送到返回

2017-01-23 09:46:13 260

转载 ActionBar Tab

标签:为了使用ActionBar实现Tab导航,按如下步骤进行即可。1.调用ActionBar的setNavigationMode(ActionBar.NAVIGATION_MODE_TABS)方法设置使用Tab导航方式。2.调用ActionBar的addTab方法添加多个Tab标签,并为每个Tab标签添加事件监听。Fragment相当于activity片段,通常使用单独的activity组合多个f

2017-01-05 17:38:40 209

转载 Property Animation

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/380674751、概述 Android提供了几种动画类型:View Animation 、Drawable Animation 、Property Animation 。View Animation相当简单,不过只能支持简单的缩放、平移、旋转、透明度基本的动画,且有一定的局限性。比

2016-12-26 15:52:23 210

转载 AndroidManifest中Application、Activity、Service属性介绍(转 )

一. application 标签属性<application/> 应用的声明。该节点必须包含在android <manifest/>节点中。而<application/>节点包含了<activity/>,<activity-alias/>,<receiver/>,<provider/>和<uses-library/>这几个节点。<application android:allowCl

2016-12-16 15:44:11 1548

转载 BLE通信(转)

新手刚接触蓝牙4.0,好不容易实现了读取蓝牙上的步数,体重上的数据和血压计的数据。网上资料真的很难找。 扫描蓝牙设备的Activity public class DeviceScanActivity extends ListActivity {private final static int REQUEST_ENABLE_BT = 1;private boolean mScanning;pr

2016-12-16 09:30:48 530

原创 初学《 NotificationBar》

NotificationBar的实现代码参考,上代码:public class MusicService extends Service implements MediaPlayer.OnCompletionListener { private static final boolean D = true; private static final String TAG = MusicS

2016-12-02 17:11:53 361

原创 Db

android开发中离不开数据库的操作,直接上代码:public class DBHelper extends SQLiteOpenHelper { //singleton instance private static DBHelper sInstance; private static final int DATABASE_VERSION = 0x02; privat

2016-12-01 14:13:07 363

原创 elf

一. 使用LocalBroadcastManager的registerReceiver相比Context的具有许多的好处 。 二 . 开机判断蓝牙设备连接状态以及连接类型:BluetoothManager btMng = (BluetoothManager)getSystemService(Context.BLUETOOTH_SERVICE);BluetoothAdapter btAdapte

2016-11-30 16:35:53 371

转载 Bitmap使用举例

Bitmap

2016-11-29 17:35:41 424

转载 Table框架滑动

前言 Android开发中使用底部菜单栏的频次非常高,主要的实现手段有以下: a. TabWidget b. 隐藏TabWidget,使用RadioGroup和RadioButton c. FragmentTabHost d. 5.0以后的TabLayout 最近推出的 Bottom navigation今天带大家来探索下如何用Fragment+FragmentTabHost

2016-11-25 09:35:45 729

原创 SageApp

刚做完一个项目,觉得有必要总结一下。一. 首先一些wifi配置连接的操作。 主要使用的类包括WifiManager,ScanResult,WifiInfo,NetworkInfo, DHCPInfo, ConnectiveManager, NetworkInterface, WifiConfiguration. 1. 得到WifiManager的实例:WifiManager mWifiManag

2016-11-04 14:06:15 253

转载 foreService

Introduction to Android Foreground ServiceLets start with a basic know hows; As you may know that services are used for time consuming operations which do not require a user interface. But there are si

2016-11-03 12:06:14 314

转载 servic

一.上次的两个问题:在BindService为什么不调用onServiceDisConnection()类ServiceConnection中的onServiceDisconnected()方法在正常情况下是不被调用的,它的调用时机是当Service服务被异外销毁时,例如内存的资源不足时这个方法才被自动调用。Android系统在同service的连接意外丢失时调用这个.比如当service崩溃了

2016-11-03 11:25:57 334

转载 MusicPly

1)如何获得MediaPlayer实例: 可以使用直接new的方式: MediaPlayer mp = new MediaPlayer(); 也可以使用create的方式,如: MediaPlayer mp = MediaPlayer.create(this, R.raw.test);//这时就不用调用setDataSource了2) 如何设置要播放的文件: MediaPlayer要播放的

2016-11-03 10:10:23 178

转载 OpenSS

一.从OPENSSL握手过程谈起当我们尝试着建立一个加密连接的时候,首先需要在客户端和服务器之间进行加密套件的协商以及会话密钥的协商,不幸的是,这一过程是复杂的,并且容易遭到攻击的,因此,单个用户在不使用第三方库的情况下很难建立一个加密连接。还好TLS/SSL协议族为我们提供了一个足够安全的解决方案,而OPENSSL作为最广为人知的也是最常使用的TLS/SSL实现方案也在互联网中得到了广泛应用。

2016-11-01 13:17:13 774

转载 okttp

一、CallsHTTP客户端的工作是接受你的request,并产生它的response。这个在理论上是简单的,但在实践中确是很棘手。 1.1 请求每一个HTTP请求中都包含一个URL,一个方法(如GET或POST),和一个请求头列表(headers)。请求还可以含有一个请求体(body):一个特定内容类型的数据流。 1.2 响应每一个HTTP响应中都包含一个状态码(如200代表成功,404代表未

2016-10-29 15:09:48 645

转载 DUP(转)

package com.example.almoliu.udptest;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.TextVie

2016-09-29 11:03:00 248

原创 一些android studio中的比较好用的jar包

最近在做项目时,发现一些好用的类,现小计一下,大神勿入:dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.4.0' compile 'org

2016-09-26 16:27:10 3048

转载 RTTI

运行时类型信息使得你可以在程序运行时发现和使用类型信息。主要有方式:一种是“传统的”RTTI;一种是“反射”机制,它允许在程序运行时发现和使用类的信息。 面向对象编程的目的是:让代码只操作对基类的引用,这就是多态。 RTTI的含义是:在程序运行时,识别一个对象的类型。abstract class Shape { private static final TAG = Sha

2016-08-29 17:27:12 334

原创 ap

最近在做一个项目,需要设计wifi的网络编程。在此小记一下:首先,明确几个IP地址的含义: firstly 10.0.2.2:此IP地址的含义是本地局域网的IP地址。在android中,当你使用模拟器时,此IP地址代表的是你电脑主机的地址。 127.0.0.1:此IP地址的含义是本机的IP地址。在android中,当你使用模拟器时,此IP地址代表的是模拟器的地址。 1

2016-07-25 14:36:05 540

转载 android语音识别 android.speech 包分析

http://mengxx.blog.51cto.com/2502718/767085android voice recognition,语音识别作为Service实现。 语音识别API在android.speech中 API大致分成应用端API和service端APIRecognizerIntent顾名思义,在自己的程序中,需要语音识别了,发出这个intent,如果已经安装了google voic

2016-05-27 11:14:42 1383

转载 Android蓝牙编程 之 同时打开SPP和音频A2DP服务

发现网上很少有蓝牙解决方案,特别是怎么控制蓝牙音频,没人介绍。我写了个apk,可以通过手机控制开发板的音频Codec,既可以同时传控制参数,又可以传输音频。我的经验如下:问题:利用官网的APP Sample,通过UUID实现了SPP通信,控制音频开发板,但是发现,只能控制开发板,却不能同时传输音频。分析:A2DP是Android自带的profile,开发者不需要接触到UUID,但肯定也是通过UUID

2016-05-25 16:55:30 1700

原创 android process communication between two application

实现两个application之间的进程通信,需要用到service,并且在client端根据是否需要多线程可以分成使用Messenger和AIDL两种方法来实现。当你的client端需要多个线程时,此时需要用到AIDL, 在AIDL的方法,当被remote process调用时,会在thread pool启动一个线程来实现。下面是方法步骤: 一. 首先在Android studio中建立自己的A

2016-05-25 11:23:43 275

转载 My Action NoteDown()

http://blog.csdn.net/u013749540/article/details/514162521、ActionBar的简介 ActionBar位于Activity的顶部,可用来显示activity的标题、Icon、Actions和一些用于交互的View。它也可被用于应用的导航。 ActionBar 是在Android 3.0(API 11)中加入到SK中的,想在低版本中使用Ac

2016-05-15 22:07:08 238

转载 通过ContentProvider播放音乐文件

今天我将为大家分享基于Service与ContentProvider的音乐播放实例,对于接触Android有一些时日的人来说,Android的核心就是Activity、Service、ContentProvide,BroadcastReceiver,以及串联它们的Intent五大模块。 Service Android中的服务,与Activity不同,它是不能与用户交互的,是运行在后台的程序。如果

2016-05-14 12:52:09 1316

原创 小记Messenger

Messenger,信使,可使用它进行进程间的通信,而Messenger对Service的请求采用队列的方式,因此它不支持多线程通信。看看官方文档对于Messenger的解释:Reference to a Handler, which others can use to send messages to it. This allows for the implementation of messa

2016-05-13 17:42:38 350

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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