diff --git a/build.gradle b/build.gradle
index 1e7ed07..0a57a8c 100644
--- a/build.gradle
+++ b/build.gradle
@@ -5,6 +5,6 @@ buildscript {
dependencies {
// Android plugin for gradle
// http://google.github.io/android-gradle-dsl
- classpath 'com.android.tools.build:gradle:1.5.0'
+ classpath 'com.android.tools.build:gradle:2.1.0'
}
}
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 04e72a6..14f20b1 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Thu Jul 06 10:31:50 CST 2017
+#Tue Dec 05 15:39:40 CST 2017
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-2.11-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
diff --git a/keyboardservice/build.gradle b/keyboardservice/build.gradle
index e1e8f09..30c7165 100644
--- a/keyboardservice/build.gradle
+++ b/keyboardservice/build.gradle
@@ -8,8 +8,8 @@ android {
applicationId 'com.android.adbkeyboard'
minSdkVersion 15
targetSdkVersion 22
- versionCode 1
- versionName "1.1"
+ versionCode 3
+ versionName "2.1"
}
}
diff --git a/keyboardservice/src/main/AndroidManifest.xml b/keyboardservice/src/main/AndroidManifest.xml
index 90723ee..6e1b9c3 100644
--- a/keyboardservice/src/main/AndroidManifest.xml
+++ b/keyboardservice/src/main/AndroidManifest.xml
@@ -1,7 +1,7 @@
+ android:versionCode="2"
+ android:versionName="2.0" >
-
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/keyboardservice/src/main/java/com/android/adbkeyboard/ProcessInfoService.java b/keyboardservice/src/main/java/com/android/adbkeyboard/ProcessInfoService.java
new file mode 100644
index 0000000..80976c8
--- /dev/null
+++ b/keyboardservice/src/main/java/com/android/adbkeyboard/ProcessInfoService.java
@@ -0,0 +1,75 @@
+package com.android.adbkeyboard;
+
+/**
+ * Created by andrewleo on 2017/11/1.
+ */
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.util.List;
+
+import android.app.IntentService;
+import android.content.Intent;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.PackageManager;
+import android.os.Bundle;
+import android.util.Log;
+
+import org.json.JSONArray;
+import org.json.JSONObject;
+
+public class ProcessInfoService extends IntentService {
+
+ private static final String PROCESS_INFO_ACTION = "com.android.adbkeyboard.ProcessInfo";
+ private static final String DEFAULT_FILE_PATH = "/data/local/tmp/appinfos";
+
+ public ProcessInfoService() {
+ super("ProcessInfoService");
+ }
+
+ @Override
+ protected void onHandleIntent(Intent intent) {
+ if (intent != null) {
+ Bundle bundle = intent.getExtras();
+ String fileToSaved = (bundle != null) ? bundle.getString("fileToSave",
+ DEFAULT_FILE_PATH) : DEFAULT_FILE_PATH;
+ try {
+ switch (intent.getAction()) {
+ case PROCESS_INFO_ACTION:
+ JSONArray jsonArray = new JSONArray();
+ PackageManager pm = this.getPackageManager();
+ for (ApplicationInfo appinfo : getAppInfos()) {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put(appinfo.loadLabel(pm).toString(), appinfo.processName);
+ jsonArray.put(jsonObject);
+ }
+ saveToFile(fileToSaved, jsonArray.toString());
+ }
+ } catch (Exception e) {
+ Log.e("adbKeyBoard", e.getMessage());
+ e.printStackTrace();
+ }
+ }
+
+ }
+
+ private void saveToFile(String filePath, String content) throws IOException {
+ File file = new File(filePath);
+ if (!file.exists()) {
+ file.createNewFile();
+ }
+ FileWriter fw = new FileWriter(file);
+ BufferedWriter bw = new BufferedWriter(fw);
+ bw.write(content);
+ bw.close();
+ }
+
+ private List getAppInfos() {
+ PackageManager pm = getApplicationContext().getPackageManager();
+ List appList = pm
+ .getInstalledApplications(PackageManager.GET_UNINSTALLED_PACKAGES);
+ return appList;
+ }
+}
diff --git a/keyboardservice/src/main/res/layout/keyboard.xml b/keyboardservice/src/main/res/layout/keyboard.xml
index 71fc64a..56e995b 100644
--- a/keyboardservice/src/main/res/layout/keyboard.xml
+++ b/keyboardservice/src/main/res/layout/keyboard.xml
@@ -7,31 +7,11 @@
-
-
-
-
-