之前写过一篇文章<Android学习小Demo(13)Android中关于ContentObserver的使用>,在里面利用ContentOberver去监測短信URI内容的变化.我们先来回想一下,是怎样利用ContentOberver来监測短信内容的变化的. 1)要自己定义一个类,比方SmsContentObserver,继承ContentObserver,而且实现其onChange方法. 2)在onChange方法中去查询相应Uri,比方短信收件箱的内容,并将相应的记录利用Handler发…
今天在处理一个EditText的时候,想着把EditText做成像一本作业本上的纸一样,每一行都可以由线条隔开,具体效果如下: 1)最开始的思路 一开始的想法是很简单的,找出每一行的高度,然后一行一行地画线不就好了吗,代码如下: viewHeight = getMeasuredHeight(); viewWidth = getMeasuredWidth(); lineHeight = getLineHeight(); int maxLines = viewHeight / lineHeight…
Android在3.0之后引入了Fragment的概念,我推測其想法可能仅仅是想更好地兼容大屏幕或者平板的开发,由于大屏幕能够展示很多其它的内容,而内容一多,逻辑有可能就乱,而利用Fragment,则能够将不同的逻辑封装进不同的Fragment中,可是展现呢,还是在同一个Activity中,在同一个屏幕上显示.而对于屏幕并不大的手机来说,假设一个页面展示的东西并不多,那么事实上将逻辑直接写在Activity,利用多个Activity实现多个页面的展示,我认为也是能够接受的,毕竟用Activity…
在日常的App开发中,尤其是在开发生活服务的应用上,非常多时候,我们会须要联动地展现省市区的数据等,需求大概例如以下: 1)展现全部省份 2)当点击某省份的时候,在二级菜单上展现此省份以下所属的城市列表 3)选中返回,显示我们选中的城市 4)当又一次进入选择页面的时候,标识出我们上一次选中(或者说当前已经选择)的值 下图是一个类似的ListView联动选择控件. 1)首先定义一个Layout,左右各放置一个ListView,大概界面例如以下: 2)自己定义一个控件(ValuePicker),在控…
在上一篇文章 Android简单实现BroadCastReceiver广播机制 中简单的实现了一个广播机制,这里利用BroadCarstRecevier实现一个接收短信并显示内容的案例,当然至于接收到短信以后是显示还是做其他的工作都能够由你自己决定了.我如今仅仅关心的是获取到短信内容就能够了. 看实例: MainActivity.java 採用默认,不须要不论什么改动 package com.example.broadcastreceiver; import android.os.Bundle;…
收发短信是每一个手机主要的操作,android手机当然也能够接收短信了. android系统提供了一系列的API,使得我们能够在自己的应用程序里接收和发送短信. 事实上接收短信主要是利用我们前面学过的广播机制.当手机接收到一条短信的时候,系统会发出一条值为andorid.provider.Telephony.SMS_RECEIVED的广播.这条广播里携带着与短信相关的全部数据. 每一个应用程序都能够在广播接收器里对它进行监听,收到广播时在从中解析出短信的内容就可以. 以下我们来个详细的样例实践下…
阿里大于是阿里通信旗下产品,融合了三大运营商的通信能力,提供包括短信.语音.流量直充.私密专线.店铺手机号等个性化服务.每条四分五,价钱还算公道,经老农测试,响应速度非常快,基本上是秒到.官方文档提供了JAVA..NET.PHP.Python.C/C++.NodeJS 等语言的 Demo,唯独没有 Dephi,但这也不能怪马云,毕竟 Delphi 实在太小众了. 最近用 Delphi 写个 App,注册用户需要用到手机短信验证,于是找到的阿里大于,使用 Delphi 10.1 berlin 写了…
modem层不懂,所以直接从RIL.java开始.以电信卡接收短信为例 modem通知RIL.java中的 RILReceiver处理接收信息 class RILReceiver implements Runnable { byte[] buffer; RILReceiver() { buffer = new byte[RIL_MAX_COMMAND_BYTES]; } @Override public void run() { ...... //建立socked连接,读取数据 processR…
Android收到短信时会广播android.provider.Telephony.SMS_RECEIVED消息,因此只要定义一个Receiver,收听该消息,就能接收短信. <receiver android:name=".smsReceiver" > <intent-filter> <action android:name="android.provider.Telephony.SMS_RECEIVED" /> </in…
启动程序时启动一个service,在service里注册接收短信的广播,当手机收到短信里,打印出短信内容跟电话号码. package com.lmy.SmsListener; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.widget.TextView; public class SmsListenerActivity extends Act…
收发短信应该是每个手机最基本的功能之一了,即使是许多年前的老手机也都会具备这项功能,而Android 作为出色的智能手机操作系统,自然也少不了在这方面的支持.今天我们开始自己创建一个简单的发送和接收短信的应用. 目录导航 接收短信 发送短信 友情链接 接收短信 项目的结构如下:一个简单的接收和发送短信的功能…
本随笔转载自:https://www.52pojie.cn/thread-804477-1-1.html 转载声明:本文转自酷安tasker评论区 ID:随风荡 的评论,我只是按照我的需求进行了一次修改. 把手机的信息推送的企业微信(App或者微信公众号) 教程看似繁琐,实际上一步步操作下去,不会很难的. 自从换了苹果,因为不能双卡问题,所以两张卡的我,一直很苦恼,又不方便带两把手机,本来想自己再去温习一下易安卓,写个软件自动复制短信到云端,我方便查看验证码,但后来看到了 恶搞大王 发布的这个帖…
一.什么是RPC协议? 全称:远程过程调度协议 效果:使消费者向调用本地方法一样调用远程服务方法,对使用者透明 目前常用:Dubbo.Thirft.Sofa.... 功能: 建立远程通信(socket)TCP/UDP 数据传递 序列化和反序列化(XML/json/Protobuf/avro/kyro/hessian) 流程图: 二.Demo思路 首先我们需要搭建两个项目,一个作为服务端提供服务,另一个作为客户端来调用服务端的接口方法. 因为客户端需要调用服务端的接口,所以我们需要客户端依赖这个通…
1. 读写短信 示例代码 均需要先获得读写短信的权限 <uses-permission android:name="android.permission.WRITE_SMS"/> <uses-permission android:name="android.permission.READ_SMS"/> 读取短信代码 public void click(View view){ //1.利用内容提供者 中间人 获取用户的短信数据. Content…
在上一篇学习安卓开发[3] - 使用RecyclerView显示列表中了解了在进行列表展示时RecyclerView的使用,本次记录的是在应用中如何通过隐式Intent调用其它应用的功能,比如发短信.打电话.拍照等 隐式Intent 短信 判断是否存在相关APP 相机 FileProvider Bitmap 功能声明 隐式Intent Intent对象用来向操作系统说明需要处理的任务.使用显式Intent时,要指定操作系统需要启动的activity,但使用隐式intent,只需告知操作系统想要进…
前言:前阵子主要是记录了如何对联系人的一些操作,比如搜索,全选.反选和删除等在实际开发中可能需要实现的功能,本篇博客是小巫从一个别人开源的一个项目抽取出来的部分内容,把它给简化出来,可以让需要的朋友清楚知道如何对Android数据库操作,异步查询数据库获取我们需要的内容.由于内容比较多,我将分三篇博客来讲述获取联系人.通话记录.短信消息的实现.   也许你根本就没耐心看,源码在这里http://download.csdn.net/detail/wwj_748/6962865,骚年去下吧.   上…
一.搭建开发环境 1.所需资源 JDK6以上 Eclipse3.6以上 SDK17, 2.3.3 ADT17 2.安装注意事项 不要使用中文路径 如果模拟器默认路径包含中文, 可以设置android_sdk_home环境变量解决.效果如下: 二.拨打电话 1.步骤 在Button节点中添加onClick属性, 指定一个方法名 在Activity中定义一个public void 方法名 (View view) 获取文本框中的号码 创建意图, 设置动作, 设置数据 使用意图开启Activity 2.…
在创业团队中,一个重要的原则是能省就省,该花就花,把银子用在刀刃上. 现在的app,为了获取用户的社交关系,需要用户的手机号注册.用手机号注册就涉及到一个发送短信验证码的问题,那怎么才能在短信服务上投入最少的成本获得最大的收益? 1.    选择什么短信平台? 短信服务主要考虑下面2个方面: 1.发短信不便宜啊,发送一条短信的价格在5分钱-8分钱之间. 2.考虑短信的到达率和延时. 之前我的手机经常收到各种乱七八糟的短信,例如,发票啊,个人贷款等.在2013年年底,3大运营商终于整顿短信,那时一…
通过广播接收者,接收到短信,对短信内容进行判断,如果为我们指定的值就执行相应的操作 如果短信内容是”#*location*#” 就执行,获取手机位置 如果短信内容是”#*alarm*#” 就执行,播放报警音乐 如果短信内容是”#*wipedata*#” 就执行,远程清除数据 如果短信内容是”#*lockscrreen*#” 就执行,远程锁屏 把短信的优先级定义成1000 使用模拟器发送短息的时候,会自动给发送号码拼接上155xxxx等,判断时候会不准确,使用String对象的contains()…
; i < messages.length; i++) { SmsMessage ms = SmsMessage.createFromPdu((byte[])pdus[i]); String from = ms.getDisplayOriginatingAddress().toString(); String content = ms.getMessageBody().toString(); SimpleDateFormat sf= new SimpleDateFormat("yyyy-M…
最近做通讯录的项目,需要实时监听短信的删除,就用到了观察者ContentObserver,怪异的事情就此发生,当我删除一条短信的时候,可以监听到,但是,当我删除整条短信的时候,就无法监听到,查了很多资料,都没有一个好的解决方案,顺便吐糟一下:大家来eoe发问题,问题解决了,也不说把解决的方法给大家分享一下... OK,先看源码吧com.android.providers.telephony.MmsSmsProvider这个类的删除操作源码 @Override    public int dele…
一. 在清单文件中(AndroidManifest.xml)添加短信权限 这里我用的android studio版本是3.3的 <uses-permission android:name="android.permission.READ_SMS" /><uses-permission android:name="android.permission.RECEIVE_SMS" /><uses-permission android:name…
本文是我自己的亲身实践得来,喜欢的朋 友别忘了点个赞哦! 最近整理了一下利用阿里大于短信平台来实现发送短信功能. 闲话不多说,直接开始吧. 首先,要明白利用大于发送短信这件事是由两部分组成: 一.在阿里大于短信平台配置相关信息 二.在myeclipse/eclipse中编写代码实现发送短信 ---------------------阿里大于短信平台配置--------------- 登录阿里大于网站:http://www.alidayu.com 点击入驻,会出现如下图 可以用淘宝.支付宝.微博登…
前言:网上已经有很多人将Opencv集成进Android项目中了.因此我只给大家看Gradle文件和项目目录. 1.gradle 三个gradle script // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { google() jcenter() } dependencies { clas…
很早之前就有了写一个类似Windows记事本的想法,加上最近也刚好在学编译原理,所以就想把两者结合起来,于是就打算结合MarkDown,开发一款MarkDown编辑器. 不过由于我之前一直使用的是Java语言居多,对c++并不熟悉,所以一些糟糕的代码风格和规范还望各位大佬谅解! LightMD 即一款基于QT实现的markdown编辑器,当然也可以作为代码编辑器,由于时间与个人能力等原因,目前实现的功能非常有限! 主要包括: 支持语法高亮(目前支持C/C++) 支持MarkDown预览 代码行数…
1.activity_main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent&qu…
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width){ borderwidth = width; } 具体实现: package xiaosi.imageborder; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; publ…
//设置颜色 public void setColour(int color){ co = color; } //设置边框宽度 public void setBorderWidth(int width){ borderwidth = width; } 具体实现: package xiaosi.imageborder; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; publ…
在一个Activity用完之后应该将之finish掉,但是,之前在学校里自己摸索着开发时并没有太注意这个问题,因为activity无论是否finish掉对功能的影响貌似都不是那么明显(这是读书时候的观点),因此也就没有仔细考虑过activity合适finish这个问题. 最近在公司的项目里遇到这个问题,于是就总结了一下. 假设我们有三个activity,分别叫做A.B.C 第一种情况: 我们先从A跳转到B再跳转到C,每次跳转完成之后都不finish当前的activity,那么到达C之后,如果我们…
package com.example.testsms; import android.app.Activity; import android.app.PendingIntent; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.o…