package com.haicaojie.android.service;
|
|
import android.app.ActivityManager;
|
import android.app.Service;
|
import android.content.ClipboardManager;
|
import android.content.Context;
|
import android.content.Intent;
|
import android.content.SharedPreferences;
|
import android.os.IBinder;
|
import android.support.annotation.Nullable;
|
import android.widget.Toast;
|
|
import com.lcjian.library.util.common.StringUtils;
|
|
import java.util.List;
|
|
/**
|
* Created by weikou2015 on 2017/12/14.
|
*/
|
|
public class ClipbroadContentChangeService extends Service {
|
@Nullable
|
@Override
|
public IBinder onBind(Intent intent) {
|
return null;
|
}
|
|
@Override
|
public int onStartCommand(Intent intent, int flags, int startId) {
|
final String des = getSharedPreferences("user", MODE_PRIVATE).getString("clipBroadContent", "");
|
final ClipboardManager clipboardManager = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
|
clipboardManager.addPrimaryClipChangedListener(new ClipboardManager.OnPrimaryClipChangedListener() {
|
@Override
|
public void onPrimaryClipChanged() {
|
String description = "";
|
try {
|
description = clipboardManager.getPrimaryClip().getItemAt(0).getText().toString();
|
Toast.makeText(getApplicationContext(), description, Toast.LENGTH_SHORT).show();
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
if ((!des.equalsIgnoreCase(description)) && getSharedPreferences("user", MODE_PRIVATE).getString("copy", "0").equalsIgnoreCase("1") && (!StringUtils.isEmpty(description))) {
|
// BuXinConstant.isClipBroadChanged = true;
|
SharedPreferences sp = getSharedPreferences("user", MODE_PRIVATE);
|
SharedPreferences.Editor editor = sp.edit();
|
editor.putBoolean("isClipBroadChanged", true);
|
editor.putString("clipBroadContent", description);
|
editor.commit();
|
}
|
}
|
});
|
|
return super.onStartCommand(intent, flags, startId);
|
}
|
|
|
private boolean isForeground() {
|
ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
|
List<ActivityManager.RunningAppProcessInfo> processes = activityManager.getRunningAppProcesses();
|
for (ActivityManager.RunningAppProcessInfo processInfo : processes) {
|
if (processInfo.processName.equals(getPackageName())) {
|
if (processInfo.importance == ActivityManager.RunningAppProcessInfo.IMPORTANCE_FOREGROUND) {
|
return true;
|
}
|
}
|
}
|
return false;
|
}
|
|
|
@Override
|
public void onCreate() {
|
super.onCreate();
|
}
|
|
@Override
|
public void onStart(Intent intent, int startId) {
|
super.onStart(intent, startId);
|
}
|
|
@Override
|
public void onDestroy() {
|
super.onDestroy();
|
}
|
|
@Override
|
public boolean onUnbind(Intent intent) {
|
return super.onUnbind(intent);
|
}
|
}
|