package com.android.ScreenCap;
import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.media.AudioManager;
import android.media.ToneGenerator;
import android.net.Uri;
import android.os.IBinder;
import android.util.Log;
public class ScreenCapService extends Service {
private static final String TAG = "ScreenCapService";
private static final String ACTION_CAPTURE_SCREEN =
"com.android.CAPTURE_SCREEN";
private BroadcastReceiver mCaptureScreenReceiver;
private ToneGenerator mToneGenerator;
@Override
public void onCreate() {
/* capture screen receiver */
IntentFilter filter = new IntentFilter();
filter.addAction(ACTION_CAPTURE_SCREEN);
mCaptureScreenReceiver = new CaptureScreenReceiver();
registerReceiver(mCaptureScreenReceiver, filter);
/* capture tone */
initializeCaptureTone();
}
@Override
public void onDestroy() {
unregisterReceiver(mCaptureScreenReceiver);
releaseCaptureTone();
}
@Override
public IBinder onBind(Intent arg0) {
// TODO Auto-generated method stub
return null;
}
private final class CaptureScreenReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (ACTION_CAPTURE_SCREEN.equals(intent.getAction())) {
Log.d(TAG, "CaptureScreenReceiver: " + intent.getAction());
ToneGenerator tg = mToneGenerator;
if (tg != null) {
tg.startTone(ToneGenerator.TONE_PROP_BEEP);
}
String file_name = ScreenCapNative.startCaptureScreen();
if (file_name != null) {
sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,
Uri.parse("file://" + file_name)));
Log.d(TAG, "CaptureScreen as file: " + file_name);
}
}
}
}
private void initializeCaptureTone() {
// Initialize tone generator.
try {
mToneGenerator = new ToneGenerator(
AudioManager.STREAM_SYSTEM, 100);
} catch (Throwable ex) {
Log.w(TAG, "Exception caught while creating tone generator: ", ex);
mToneGenerator = null;
}
}
private void releaseCaptureTone() {
if (mToneGenerator != null) {
mToneGenerator.release();
mToneGenerator = null;
}
}
}
2.3截屏全部源码+APK+so
4星 · 超过85%的资源 需积分: 10 9 浏览量
2011-12-12
18:22:13
上传
评论 31
收藏 31KB RAR 举报
zmyde2010
- 粉丝: 237
- 资源: 4
最新资源
- 基于双向 LSTM 中文微博情感分类项目功能实现
- PHP新闻管理系统设计与实现 毕业设计
- STM32单片机FPGA毕设电路原理论文报告汽车电动助力转向单片机控制系统设计与试验研究
- STM32单片机FPGA毕设电路原理论文报告气压传感器神经网络算法及单片机实现
- 西南交大-大学物理A作业-2019-带参考答案
- c++语言大作业,校区人员管理系统framework.zip
- 多目标优化算法集合,包含使用手册
- c语言程序设计大作业 课程设计 高分大作业98分.zip
- STM32单片机FPGA毕设电路原理论文报告频率的测量在单片机设计中的应用
- 音频转码工具(用于将微信语音 amr 格式转换为 mp3 格式以便在 html5 的 audio 标签中进行播放).zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
- 3
- 4
- 5
- 6
前往页