first commit
This commit is contained in:
commit
c637064c24
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,2 @@
|
|||
#Mon Jun 30 17:18:21 CST 2025
|
||||
gradle.version=7.0.2
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,2 @@
|
|||
#Mon Jun 30 17:58:45 CST 2025
|
||||
java.home=D\:\\workspace\\zulu-8
|
|
@ -0,0 +1,3 @@
|
|||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
|
@ -0,0 +1 @@
|
|||
jwzs
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="AndroidProjectSystem">
|
||||
<option name="providerId" value="com.android.tools.idea.GradleProjectSystem" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="CompilerConfiguration">
|
||||
<bytecodeTargetLevel target="11" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="deploymentTargetSelector">
|
||||
<selectionStates>
|
||||
<SelectionState runConfigName="app">
|
||||
<option name="selectionMode" value="DROPDOWN" />
|
||||
<DropdownSelection timestamp="2025-07-01T02:47:33.836293500Z">
|
||||
<Target type="DEFAULT_BOOT">
|
||||
<handle>
|
||||
<DeviceId pluginId="LocalEmulator" identifier="path=C:\Users\28758\.android\avd\Pixel_3a.avd" />
|
||||
</handle>
|
||||
</Target>
|
||||
</DropdownSelection>
|
||||
<DialogSelection />
|
||||
</SelectionState>
|
||||
</selectionStates>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="Encoding">
|
||||
<file url="file://$PROJECT_DIR$/app/libs/acrabsoft-sjt-sdk-20211216.aar" charset="GBK" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="GradleMigrationSettings" migrationVersion="1" />
|
||||
<component name="GradleSettings">
|
||||
<option name="linkedExternalProjectsSettings">
|
||||
<GradleProjectSettings>
|
||||
<option name="testRunner" value="CHOOSE_PER_TEST" />
|
||||
<option name="distributionType" value="LOCAL" />
|
||||
<option name="externalProjectPath" value="$PROJECT_DIR$" />
|
||||
<option name="gradleHome" value="$PROJECT_DIR$/../../../../gradle-7.0.2-bin/gradle-7.0.2" />
|
||||
<option name="gradleJvm" value="11" />
|
||||
<option name="modules">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
<option value="$PROJECT_DIR$/app" />
|
||||
</set>
|
||||
</option>
|
||||
</GradleProjectSettings>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: D./workspace/IdeaProjects/MyApplication-master/myapplication/app/libs/acrabsoft-sjt-sdk-20211216.aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/5b829f9407f418c0feceda3673f32990/transformed/jetified-acrabsoft-sjt-sdk-20211216/res" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/5b829f9407f418c0feceda3673f32990/transformed/jetified-acrabsoft-sjt-sdk-20211216/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/5b829f9407f418c0feceda3673f32990/transformed/jetified-acrabsoft-sjt-sdk-20211216/jars/libs/classes-2.jar!/" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/5b829f9407f418c0feceda3673f32990/transformed/jetified-acrabsoft-sjt-sdk-20211216/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.arch.core:core-common:2.1.0" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="androidx.arch.core" artifactId="core-common" version="2.1.0" baseVersion="2.1.0" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.arch.core/core-common/2.1.0/b3152fc64428c9354344bd89848ecddc09b6f07e/core-common-2.1.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.arch.core/core-common/2.1.0/80ac2d7c8e6400ce2fbc663cd1a7e1cbef38c4b8/core-common-2.1.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.arch.core:core-runtime:2.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/b39e20052568115d5d6e20e605eabe6a/transformed/core-runtime-2.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/b39e20052568115d5d6e20e605eabe6a/transformed/core-runtime-2.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.arch.core/core-runtime/2.0.0/bc41b287c95bc50a3cd27cb1b7cfb301805ba7f1/core-runtime-2.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,13 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.cardview:cardview:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/1bc1de6a32330280351f65a0393bdf57/transformed/cardview-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/1bc1de6a32330280351f65a0393bdf57/transformed/cardview-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/1bc1de6a32330280351f65a0393bdf57/transformed/cardview-1.0.0/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.cardview/cardview/1.0.0/c9f3ce7ca74ad2c978230f4094ba6804c5166f9c/cardview-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.collection:collection:1.1.0" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="androidx.collection" artifactId="collection" version="1.1.0" baseVersion="1.1.0" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.collection/collection/1.1.0/1f27220b47669781457de0d600849a5de0e89909/collection-1.1.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.collection/collection/1.1.0/bae67b0019fbb38498198fcc2d0282a340b71c5b/collection-1.1.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,11 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.constraintlayout:constraintlayout:2.0.4@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d3dc1b04020dde5349a563828b949efc/transformed/constraintlayout-2.0.4/res" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d3dc1b04020dde5349a563828b949efc/transformed/constraintlayout-2.0.4/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d3dc1b04020dde5349a563828b949efc/transformed/constraintlayout-2.0.4/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,10 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.constraintlayout:constraintlayout-solver:2.0.4" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="androidx.constraintlayout" artifactId="constraintlayout-solver" version="2.0.4" baseVersion="2.0.4" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.constraintlayout/constraintlayout-solver/2.0.4/1f001d7db280a89a6c26b26a66eb064bb6d5efeb/constraintlayout-solver-2.0.4.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES />
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,16 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.1.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d5ce58f194e6eb15743ad13effdd09da/transformed/coordinatorlayout-1.1.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d5ce58f194e6eb15743ad13effdd09da/transformed/coordinatorlayout-1.1.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d5ce58f194e6eb15743ad13effdd09da/transformed/coordinatorlayout-1.1.0/AndroidManifest.xml" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d5ce58f194e6eb15743ad13effdd09da/transformed/coordinatorlayout-1.1.0/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.coordinatorlayout/coordinatorlayout/1.1.0/a15529ac349d76a872ae5ef42b84c320c456cd7f/coordinatorlayout-1.1.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/58c33f79541fa64793747c2f03ce017d/transformed/cursoradapter-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/58c33f79541fa64793747c2f03ce017d/transformed/cursoradapter-1.0.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.cursoradapter/cursoradapter/1.0.0/1e323083b41c31fd4d45510dfce50614963c3c6c/cursoradapter-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.customview:customview:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/c0d52683149a4f63c5e66613b9f51e2e/transformed/customview-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/c0d52683149a4f63c5e66613b9f51e2e/transformed/customview-1.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.customview/customview/1.0.0/61f6a717d144dff3a6bda413d9abeeb2bca71581/customview-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.documentfile:documentfile:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/5dc1b0d68d5be8d395af6b357c3240c1/transformed/documentfile-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/5dc1b0d68d5be8d395af6b357c3240c1/transformed/documentfile-1.0.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.documentfile/documentfile/1.0.0/a1bed5cf96db96bd06a2feade98fe55653811dc8/documentfile-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,15 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/8ede10147567c2507cc51ace41c13ea6/transformed/drawerlayout-1.0.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/8ede10147567c2507cc51ace41c13ea6/transformed/drawerlayout-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/8ede10147567c2507cc51ace41c13ea6/transformed/drawerlayout-1.0.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.drawerlayout/drawerlayout/1.0.0/9ecd4ecb7da215ba4c5c3e00bf8d290dad6f2bc5/drawerlayout-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.dynamicanimation:dynamicanimation:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d2646664f8d9727246d320f24126df9c/transformed/dynamicanimation-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d2646664f8d9727246d320f24126df9c/transformed/dynamicanimation-1.0.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.dynamicanimation/dynamicanimation/1.0.0/5c050e29af5033ff5e2d58ccf657ae92fdfbda4a/dynamicanimation-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.interpolator:interpolator:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/511e2a36f18b29fdf3f425e3962668f8/transformed/interpolator-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/511e2a36f18b29fdf3f425e3962668f8/transformed/interpolator-1.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.interpolator/interpolator/1.0.0/fefd5e3cbc479b6b4a9532d05688a1e659e8d3d2/interpolator-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/6d6e532017af0c907cd34d38d04e17fc/transformed/legacy-support-core-utils-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/6d6e532017af0c907cd34d38d04e17fc/transformed/legacy-support-core-utils-1.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.legacy/legacy-support-core-utils/1.0.0/46c37f178088153618cfb0afef08ec96c48f93cb/legacy-support-core-utils-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.lifecycle:lifecycle-livedata:2.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d6b2c6310d0da332cb9475defea77305/transformed/lifecycle-livedata-2.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d6b2c6310d0da332cb9475defea77305/transformed/lifecycle-livedata-2.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.lifecycle/lifecycle-livedata/2.0.0/740ce61935bd789380c01178bd8ce402402ebd2f/lifecycle-livedata-2.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.loader:loader:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d35f0010fbff61dfb15ae12685344215/transformed/loader-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d35f0010fbff61dfb15ae12685344215/transformed/loader-1.0.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.loader/loader/1.0.0/b9ef587f3e46c7fe5b00264989764e43ff45cada/loader-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/eb3bd80f829817dc46cef00554f9b4ab/transformed/localbroadcastmanager-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/eb3bd80f829817dc46cef00554f9b4ab/transformed/localbroadcastmanager-1.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.localbroadcastmanager/localbroadcastmanager/1.0.0/3930e99159fd6b7f1d2e7d5fe9af0924ca1faf9/localbroadcastmanager-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,15 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.print:print:1.0.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/998ecad2e598076d0444e5b886cc28b2/transformed/print-1.0.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/998ecad2e598076d0444e5b886cc28b2/transformed/print-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/998ecad2e598076d0444e5b886cc28b2/transformed/print-1.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.print/print/1.0.0/71fc2d9acf7cce6b96230c5af263268b1664914a/print-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,16 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.recyclerview:recyclerview:1.1.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/973d1c6591a02ca84f2ddc5ef5b8076a/transformed/recyclerview-1.1.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/973d1c6591a02ca84f2ddc5ef5b8076a/transformed/recyclerview-1.1.0/AndroidManifest.xml" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/973d1c6591a02ca84f2ddc5ef5b8076a/transformed/recyclerview-1.1.0/res" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/973d1c6591a02ca84f2ddc5ef5b8076a/transformed/recyclerview-1.1.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.recyclerview/recyclerview/1.1.0/f2bdf79e1977939817f54a9d3e2f6bc52b63bdd0/recyclerview-1.1.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.test:core:1.3.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d8e2c4a7528da0c0e1031b59169d4ead/transformed/jetified-core-1.3.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/d8e2c4a7528da0c0e1031b59169d4ead/transformed/jetified-core-1.3.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test/core/1.3.0/3d046283a0729cb2d5dacdd9b3f8b62203052da5/core-1.3.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test/core/1.3.0/cab982e254e02674aa7a46e3086986cddd50ca06/core-1.3.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.test.espresso:espresso-core:3.3.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/2222d57030042fbad78c90873ecf6155/transformed/espresso-core-3.3.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/2222d57030042fbad78c90873ecf6155/transformed/espresso-core-3.3.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test.espresso/espresso-core/3.3.0/8da4ff80a40b70b852341a5ad99c943811400eec/espresso-core-3.3.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test.espresso/espresso-core/3.3.0/1b378d81de64c2e4740b0856c4ed65c1b76ea1b2/espresso-core-3.3.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.test.espresso:espresso-idling-resource:3.3.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/ea08a2c2d68b91b463797315cd116356/transformed/espresso-idling-resource-3.3.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/ea08a2c2d68b91b463797315cd116356/transformed/espresso-idling-resource-3.3.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test.espresso/espresso-idling-resource/3.3.0/ac774bb29e6171578dc7508bf390a4a3ccbedfea/espresso-idling-resource-3.3.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test.espresso/espresso-idling-resource/3.3.0/ee0f3ffdd7782d68dbe1eafa9337872817cb299e/espresso-idling-resource-3.3.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.test.ext:junit:1.1.2@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/125a34aae9d8e89788673df1e789706f/transformed/jetified-junit-1.1.2/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/125a34aae9d8e89788673df1e789706f/transformed/jetified-junit-1.1.2/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test.ext/junit/1.1.2/c69cad63303f01767122a49e379c6121d6721a0b/junit-1.1.2-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test.ext/junit/1.1.2/d8ceef67c64321bbf484dc5997a1d2efa319bed7/junit-1.1.2-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.test:monitor:1.3.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/6a457e1f098422c217390dc14a822f0b/transformed/monitor-1.3.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/6a457e1f098422c217390dc14a822f0b/transformed/monitor-1.3.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test/monitor/1.3.0/3a80466a460e22ec785a9c0ad1a1cbaf6a08c0ee/monitor-1.3.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test/monitor/1.3.0/42fd8fe34ba94b2e75f5df0b3184887af6f98670/monitor-1.3.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.test:runner:1.3.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/25412367bc51f1a9060edc7c97d7b6e8/transformed/runner-1.3.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/25412367bc51f1a9060edc7c97d7b6e8/transformed/runner-1.3.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test/runner/1.3.0/c0fd1f1e715bfa4777ae6a679444f7471205ee7c/runner-1.3.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.test/runner/1.3.0/506c97f735db13fda1943c4eb95f2ccfc7b457e0/runner-1.3.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,16 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.transition:transition:1.2.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/e7a7361ce08649d63b0b54755f88f036/transformed/transition-1.2.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/e7a7361ce08649d63b0b54755f88f036/transformed/transition-1.2.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/e7a7361ce08649d63b0b54755f88f036/transformed/transition-1.2.0/AndroidManifest.xml" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/e7a7361ce08649d63b0b54755f88f036/transformed/transition-1.2.0/res" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.transition/transition/1.2.0/65d2a5dab39f120d3f584fdead252ce81ec7dbee/transition-1.2.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.vectordrawable:vectordrawable:1.1.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/0a2c06990f10f8bf77c6b2eafaa2d2f7/transformed/vectordrawable-1.1.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/0a2c06990f10f8bf77c6b2eafaa2d2f7/transformed/vectordrawable-1.1.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.vectordrawable/vectordrawable/1.1.0/1e0694477eed874c50c54b547cc3e5a62a57a62b/vectordrawable-1.1.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.1.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/08a78bb58e82e932da1f82c2b8b82824/transformed/vectordrawable-animated-1.1.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/08a78bb58e82e932da1f82c2b8b82824/transformed/vectordrawable-animated-1.1.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.vectordrawable/vectordrawable-animated/1.1.0/871a7705cd03bc246947638c712cdd11378233ff/vectordrawable-animated-1.1.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,16 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.viewpager2:viewpager2:1.0.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/3cb859c1ac0dd29d128e917789be4254/transformed/jetified-viewpager2-1.0.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/3cb859c1ac0dd29d128e917789be4254/transformed/jetified-viewpager2-1.0.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/3cb859c1ac0dd29d128e917789be4254/transformed/jetified-viewpager2-1.0.0/res" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/3cb859c1ac0dd29d128e917789be4254/transformed/jetified-viewpager2-1.0.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.viewpager2/viewpager2/1.0.0/3c3569044e6969f1ee5c3aa03b08e6717a2d782f/viewpager2-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,12 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: androidx.viewpager:viewpager:1.0.0@aar" external-system-id="GRADLE">
|
||||
<CLASSES>
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/70c058259436dcd4c71d85461afd1b6a/transformed/viewpager-1.0.0/AndroidManifest.xml" />
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/70c058259436dcd4c71d85461afd1b6a/transformed/viewpager-1.0.0/jars/classes.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/androidx.viewpager/viewpager/1.0.0/db045f92188b9d247d5f556866f8861ab68528f0/viewpager-1.0.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,16 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.google.android.material:material:1.3.0@aar" external-system-id="GRADLE">
|
||||
<ANNOTATIONS>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/fc0e4e87d95d67f047ecdbed3a04c4cc/transformed/material-1.3.0/annotations.zip!/" />
|
||||
</ANNOTATIONS>
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/fc0e4e87d95d67f047ecdbed3a04c4cc/transformed/material-1.3.0/jars/classes.jar!/" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/fc0e4e87d95d67f047ecdbed3a04c4cc/transformed/material-1.3.0/res" />
|
||||
<root url="file://$PROJECT_DIR$/../../../../.gradle/caches/transforms-3/fc0e4e87d95d67f047ecdbed3a04c4cc/transformed/material-1.3.0/AndroidManifest.xml" />
|
||||
</CLASSES>
|
||||
<JAVADOC />
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.google.android.material/material/1.3.0/b42a5159ef2c670d26ce08246ec5aaf8f92e5a42/material-1.3.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,10 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.google.code.findbugs:jsr305:2.0.1" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.google.code.findbugs" artifactId="jsr305" version="2.0.1" baseVersion="2.0.1" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.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>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.google.code.gson:gson:2.8.5" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.google.code.gson" artifactId="gson" version="2.8.5" baseVersion="2.8.5" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.5/f645ed69d595b24d4cf8b3fbb64cc505bede8829/gson-2.8.5.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.5/a2841d93c258a70e320be81586e92208a60144f2/gson-2.8.5-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.google.code.gson/gson/2.8.5/c5b4c491aecb72e7c32a78da0b5c6b9cda8dee0f/gson-2.8.5-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup:javawriter:2.1.1" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.squareup" artifactId="javawriter" version="2.1.1" baseVersion="2.1.1" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/67ff45d9ae02e583d0f9b3432a5ebbe05c30c966/javawriter-2.1.1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/f591a105db78771d0a1e7a277b3747556c528c22/javawriter-2.1.1-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup/javawriter/2.1.1/5b31387d839a5cdaf5b6de3990da01f7f2b963c5/javawriter-2.1.1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup.okhttp3:okhttp:3.14.9" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.squareup.okhttp3" artifactId="okhttp" version="3.14.9" baseVersion="3.14.9" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.okhttp3/okhttp/3.14.9/3e6d101343c7ea687cd593e4990f73b25c878383/okhttp-3.14.9.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.okhttp3/okhttp/3.14.9/b1818d3d87c70e43c103d125a7555965b2bcb98d/okhttp-3.14.9-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.okhttp3/okhttp/3.14.9/5ad877a6749b53b7b177e7b328ebf59ce06b75af/okhttp-3.14.9-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup.okio:okio:1.17.2" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.squareup.okio" artifactId="okio" version="1.17.2" baseVersion="1.17.2" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.okio/okio/1.17.2/78c7820b205002da4d2d137f6f312bd64b3d6049/okio-1.17.2.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.okio/okio/1.17.2/b223e35cf99bb8c3d2a5b369b6b52093a6a750c2/okio-1.17.2-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.okio/okio/1.17.2/331ecaeba2fd87c06a0766e8ebe718e1e294f27d/okio-1.17.2-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup.retrofit2:converter-gson:2.9.0" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.squareup.retrofit2" artifactId="converter-gson" version="2.9.0" baseVersion="2.9.0" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.retrofit2/converter-gson/2.9.0/fc93484fc67ab52b1e0ccbdaa3922d8a6678e097/converter-gson-2.9.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.retrofit2/converter-gson/2.9.0/76a801b6fd4d1bbd0e04cd7c079ae0e3f9c0dbf8/converter-gson-2.9.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.retrofit2/converter-gson/2.9.0/c62a3350a231bd6b678e2cad7f23028777f51e13/converter-gson-2.9.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: com.squareup.retrofit2:retrofit:2.9.0" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="com.squareup.retrofit2" artifactId="retrofit" version="2.9.0" baseVersion="2.9.0" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.retrofit2/retrofit/2.9.0/d8fdfbd5da952141a665a403348b74538efc05ff/retrofit-2.9.0.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.retrofit2/retrofit/2.9.0/920d425bcf21e948cf071783e9a0badbfd880fac/retrofit-2.9.0-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/com.squareup.retrofit2/retrofit/2.9.0/409e80ce46c84ef7e74b6934032a73b8421eebe5/retrofit-2.9.0-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: javax.inject:javax.inject:1" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="javax.inject" artifactId="javax.inject" version="1" baseVersion="1" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/6975da39a7040257bd51d21a231b76c915872d38/javax.inject-1.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/70ec961c25111ed9015d1af77772d96383c2d238/javax.inject-1-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/javax.inject/javax.inject/1/a00123f261762a7c5e0ec916a2c7c8298d29c400/javax.inject-1-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: junit:junit:4.12" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="junit" artifactId="junit" version="4.12" baseVersion="4.12" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/junit/junit/4.12/2973d150c0dc1fefe998f834810d68f278ea58ec/junit-4.12.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/junit/junit/4.12/941a8be4506c65f0a9001c08812fb7da1e505e21/junit-4.12-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/junit/junit/4.12/a6c32b40bf3d76eca54e3c601e5d1470c86fcdfa/junit-4.12-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: junit:junit:4.13.2" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="junit" artifactId="junit" version="4.13.2" baseVersion="4.13.2" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/junit/junit/4.13.2/8ac9e16d933b6fb43bc7f576336b8f4d7eb5ba12/junit-4.13.2.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/junit/junit/4.13.2/f2f3f384dacd2ade2ddf7aa7e0f4360dfee38672/junit-4.13.2-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/junit/junit/4.13.2/33987872a811fe4d4001ed494b07854822257f42/junit-4.13.2-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-core:1.3" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="org.hamcrest" artifactId="hamcrest-core" version="1.3" baseVersion="1.3" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest-core-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/ad09811315f1d4f5756986575b0ea16b99cd686f/hamcrest-core-1.3-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-core/1.3/1dc37250fbc78e23a65a67fbbaf71d2e9cbc3c0b/hamcrest-core-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-integration:1.3" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="org.hamcrest" artifactId="hamcrest-integration" version="1.3" baseVersion="1.3" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-integration/1.3/5de0c73fef18917cd85d0ab70bb23818685e4dfd/hamcrest-integration-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-integration/1.3/cc5884d4138d3376f574f6a3992acceedfc37bea/hamcrest-integration-1.3-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-integration/1.3/ae7787a563e6a1b1f17fd4ac43be3a3c8830cfda/hamcrest-integration-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,14 @@
|
|||
<component name="libraryTable">
|
||||
<library name="Gradle: org.hamcrest:hamcrest-library:1.3" type="java-imported" external-system-id="GRADLE">
|
||||
<properties groupId="org.hamcrest" artifactId="hamcrest-library" version="1.3" baseVersion="1.3" />
|
||||
<CLASSES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-library/1.3/4785a3c21320980282f9f33d0d1264a69040538f/hamcrest-library-1.3.jar!/" />
|
||||
</CLASSES>
|
||||
<JAVADOC>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-library/1.3/4324046c5f99f3dc91b5370899fa3ae65fd137d2/hamcrest-library-1.3-javadoc.jar!/" />
|
||||
</JAVADOC>
|
||||
<SOURCES>
|
||||
<root url="jar://$PROJECT_DIR$/../../../../.gradle/caches/modules-2/files-2.1/org.hamcrest/hamcrest-library/1.3/47a7ee46628ab7133129cd7cef1e92657bc275e/hamcrest-library-1.3-sources.jar!/" />
|
||||
</SOURCES>
|
||||
</library>
|
||||
</component>
|
|
@ -0,0 +1,10 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectMigrations">
|
||||
<option name="MigrateToGradleLocalJavaHome">
|
||||
<set>
|
||||
<option value="$PROJECT_DIR$" />
|
||||
</set>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,8 @@
|
|||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||
</component>
|
||||
<component name="ProjectType">
|
||||
<option name="id" value="Android" />
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/jwzs.iml" filepath="$PROJECT_DIR$/.idea/modules/jwzs.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/app/jwzs.app.iml" filepath="$PROJECT_DIR$/.idea/modules/app/jwzs.app.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/app/jwzs.app.androidTest.iml" filepath="$PROJECT_DIR$/.idea/modules/app/jwzs.app.androidTest.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/app/jwzs.app.main.iml" filepath="$PROJECT_DIR$/.idea/modules/app/jwzs.app.main.iml" />
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/modules/app/jwzs.app.unitTest.iml" filepath="$PROJECT_DIR$/.idea/modules/app/jwzs.app.unitTest.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
|
@ -0,0 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
|
@ -0,0 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="RunConfigurationProducerService">
|
||||
<option name="ignoredProducers">
|
||||
<set>
|
||||
<option value="com.intellij.execution.junit.AbstractAllInDirectoryConfigurationProducer" />
|
||||
<option value="com.intellij.execution.junit.AllInPackageConfigurationProducer" />
|
||||
<option value="com.intellij.execution.junit.PatternConfigurationProducer" />
|
||||
<option value="com.intellij.execution.junit.TestInClassConfigurationProducer" />
|
||||
<option value="com.intellij.execution.junit.UniqueIdConfigurationProducer" />
|
||||
<option value="com.intellij.execution.junit.testDiscovery.JUnitTestDiscoveryConfigurationProducer" />
|
||||
<option value="org.jetbrains.kotlin.idea.junit.KotlinJUnitRunConfigurationProducer" />
|
||||
<option value="org.jetbrains.kotlin.idea.junit.KotlinPatternConfigurationProducer" />
|
||||
</set>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
|
@ -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>
|
|
@ -0,0 +1 @@
|
|||
/build
|
|
@ -0,0 +1,59 @@
|
|||
plugins {
|
||||
id 'com.android.application'
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdk 31
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.pxkj.jwzs"
|
||||
minSdk 21
|
||||
targetSdk 27
|
||||
versionCode 1
|
||||
versionName "1.0"
|
||||
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
debug {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
|
||||
manifestPlaceholders = [
|
||||
APPID : "320924230000-2-1-32092423SJNB12202505211658160001",
|
||||
REGIONALISMCODE : "\\0320924230000",
|
||||
NETWORKAREACODE : "\\02",
|
||||
]
|
||||
}
|
||||
|
||||
release {
|
||||
minifyEnabled false
|
||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
||||
|
||||
manifestPlaceholders = [
|
||||
APPID : "320924230000-2-1-32092423SJNB12202505211658160001",
|
||||
REGIONALISMCODE : "\\0320924230000",
|
||||
NETWORKAREACODE : "\\02",
|
||||
]
|
||||
}
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_11
|
||||
targetCompatibility JavaVersion.VERSION_11
|
||||
}
|
||||
namespace 'com.pxkj.jwzs'
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: "libs", include: [".jar", ".aar"])
|
||||
implementation 'androidx.appcompat:appcompat:1.2.0'
|
||||
implementation 'com.google.android.material:material:1.3.0'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
|
||||
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
|
||||
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
|
||||
implementation files('libs\\acrabsoft-sjt-sdk-20211216.aar')
|
||||
testImplementation 'junit:junit:4.+'
|
||||
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
|
||||
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
|
||||
}
|
Binary file not shown.
|
@ -0,0 +1,21 @@
|
|||
# Add project specific ProGuard rules here.
|
||||
# You can control the set of applied configuration files using the
|
||||
# proguardFiles setting in build.gradle.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
# 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 *;
|
||||
#}
|
||||
|
||||
# Uncomment this to preserve the line number information for
|
||||
# debugging stack traces.
|
||||
#-keepattributes SourceFile,LineNumberTable
|
||||
|
||||
# If you keep the line number information, uncomment this to
|
||||
# hide the original source file name.
|
||||
#-renamesourcefileattribute SourceFile
|
|
@ -0,0 +1,26 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.test.platform.app.InstrumentationRegistry;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Instrumented test, which will execute on an Android device.
|
||||
*
|
||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
||||
*/
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
public class ExampleInstrumentedTest {
|
||||
@Test
|
||||
public void useAppContext() {
|
||||
// Context of the app under test.
|
||||
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
|
||||
assertEquals("com.pxkj.jwzs", appContext.getPackageName());
|
||||
}
|
||||
}
|
|
@ -0,0 +1,37 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
|
||||
<application
|
||||
android:name=".MyApplication"
|
||||
android:allowBackup="false"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/Theme.jwzs"
|
||||
tools:replace="android:allowBackup" >
|
||||
|
||||
<meta-data android:name="appId" android:value="${APPID}"/><!-- 应用ID,当应用在平台注册后,由平台生成的平台内唯一标识 -->
|
||||
<meta-data android:name="regionalismCode" android:value="${REGIONALISMCODE}" /><!--应用归属机构代码,如:320000260300;对于纯数字字符串,请在前面增加“\0”,否则将会取出null值字符串 -->
|
||||
<meta-data android:name="networkAreaCode" android:value="${NETWORKAREACODE}" /><!--应用所属网络区域,也即应用类型(1-2-3),如:2;对于纯数字字符串,请在前面增加“\0”,否则将会取出null值字符串 -->
|
||||
|
||||
<activity
|
||||
android:name=".FirstActivity"
|
||||
android:exported="true">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
|
||||
<activity
|
||||
android:exported="false"
|
||||
android:name=".MainActivity"/>
|
||||
</application>
|
||||
|
||||
</manifest>
|
|
@ -0,0 +1,10 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import okhttp3.ResponseBody;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.http.GET;
|
||||
public interface ApiService {
|
||||
|
||||
@GET("api/login")
|
||||
Call<ResponseBody> getData();
|
||||
}
|
|
@ -0,0 +1,202 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.app.AlertDialog;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentFilter;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
|
||||
import com.acrabsoft.sdk.ASPSDKUtils;
|
||||
|
||||
import org.json.JSONArray;
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
/**
|
||||
* Created by 皮蛋 on 2022/03/22.
|
||||
*/
|
||||
public abstract class BaseActivity extends AppCompatActivity {
|
||||
|
||||
protected String TAG = getClass().getSimpleName();
|
||||
|
||||
public static String ACTION_LOGIN = "com.ydjw.ua.ACTION_LOGIN";
|
||||
public static String ACTION_LOGOUT = "com.ydjw.ua.ACTION_LOGOUT";
|
||||
|
||||
protected static String appId = "320924230000-2-1-32092423SJNB12202505211658160001";
|
||||
// protected static String appId = "320500220500-2-1-32050022SJ97122021091XXXXXXXXXX";
|
||||
protected static String departId = "320924230000";
|
||||
// protected static String departId = "3205002xxxxxx";
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
IntentFilter filter = new IntentFilter();
|
||||
filter.addAction(ACTION_LOGIN);
|
||||
filter.addAction(ACTION_LOGOUT);
|
||||
registerReceiver(broadcastReceiver, filter);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
super.onDestroy();
|
||||
unregisterReceiver(broadcastReceiver);
|
||||
}
|
||||
|
||||
private BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
String action = intent.getAction();
|
||||
if(ACTION_LOGIN.equals(action)){
|
||||
getCredential();
|
||||
}else if(ACTION_LOGOUT.equals(action)){
|
||||
MyApplication.getInstance().finishAll();
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
protected void init(){
|
||||
try {
|
||||
ASPSDKUtils.AndroidManifestInspect(getApplicationContext(), new ASPSDKUtils.AndroidManifestInspectCallBack() {
|
||||
@Override
|
||||
public void success(String jsonString) {
|
||||
Log.e(TAG, "success--->"+jsonString);
|
||||
Toast.makeText(getApplicationContext(), "正在加载", Toast.LENGTH_SHORT).show();
|
||||
new Thread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
getCredential();
|
||||
}
|
||||
}).start();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fail(final String err) {
|
||||
runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
Toast.makeText(getApplicationContext(), ""+err, Toast.LENGTH_SHORT).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
protected void getCredential() {
|
||||
Log.e(TAG, "获取用户凭证:"+appId);
|
||||
ASPSDKUtils.getCredential(getApplicationContext(), appId, departId, "2", new ASPSDKUtils.CredentialCallBack() {
|
||||
@Override
|
||||
public void success(String messageId, String userCredential, String appCredential) {
|
||||
Log.e(TAG, "用户认证凭证获取 success \nmessageId---->" + messageId + "\nuserCredential---->" + userCredential + "\nappCredential---->" + appCredential);
|
||||
|
||||
try {
|
||||
JSONObject json = new JSONObject(userCredential);
|
||||
JSONObject credential = json.optJSONObject("credential");
|
||||
JSONObject load = credential.optJSONObject("load");
|
||||
JSONObject userInfo = load.optJSONObject("userInfo");
|
||||
String xm = userInfo.optString("xm");
|
||||
String sfzh = userInfo.optString("sfzh");
|
||||
SpUtils.putString(getApplicationContext(), Constant.XM, xm);
|
||||
SpUtils.putString(getApplicationContext(), Constant.SFZH, sfzh);
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
SpUtils.putString(getApplicationContext(), Constant.MESSAGE_ID, messageId);
|
||||
SpUtils.putString(getApplicationContext(), Constant.USER_CREDENTIAL, userCredential);
|
||||
SpUtils.putString(getApplicationContext(), Constant.APP_CREDENTIAL, appCredential);
|
||||
getResourceAddress();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fail(String messageId, final String errMsg) {
|
||||
Log.e(TAG, "用户认证凭证获取 fail \nmessageId---->" + messageId + "\nerrMsg---->" + errMsg);
|
||||
if(errMsg!=null && errMsg.startsWith("-1")){
|
||||
// 跳过,不显示对话框
|
||||
}else{
|
||||
runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
createAlertDialog("错误", "" + errMsg, BaseActivity.this);
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected void getResourceAddress() {
|
||||
Log.e(TAG, "获取资源地址:"+appId);
|
||||
ASPSDKUtils.getResourceAddress(getApplicationContext(), SpUtils.getString(getApplicationContext(), Constant.MESSAGE_ID, ""), SpUtils.getString(getApplicationContext(), Constant.APP_CREDENTIAL, ""),
|
||||
new ASPSDKUtils.ResourceAddressCallBack() {
|
||||
@Override
|
||||
public void success(String messageId, String resourceList) {
|
||||
Log.e(TAG, "资源寻址 success \nmessageId---->" + messageId + "\nresourceList---->" + resourceList);
|
||||
SpUtils.putString(getApplicationContext(), Constant.MESSAGE_ID, messageId);
|
||||
SpUtils.putString(getApplicationContext(), Constant.RESOURCE_LIST, resourceList);
|
||||
try {
|
||||
JSONArray array = new JSONArray(resourceList);
|
||||
if(array.length()>0){
|
||||
for(int i=0; i<array.length(); i++){
|
||||
JSONObject json = array.getJSONObject(i);
|
||||
String resourceId = json.getString("resourceId");
|
||||
String resourceAddress = json.getString("resourceAddress");
|
||||
Log.e(TAG, "resourceId->"+resourceId);
|
||||
Log.e(TAG, "resourceAddress->"+resourceAddress);
|
||||
SpUtils.putString(BaseActivity.this, resourceId, resourceAddress);
|
||||
}
|
||||
}else{
|
||||
runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
createAlertDialog("提示", "未获取到资源列表", BaseActivity.this);
|
||||
}
|
||||
});
|
||||
}
|
||||
} catch (JSONException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
refresh();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void fail(String messageId, final String errMsg) {
|
||||
Log.e(TAG, "资源寻址 fail \nmessageId---->" + messageId + "\nerrMsg---->" + errMsg);
|
||||
runOnUiThread(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
createAlertDialog("错误", "" + errMsg, BaseActivity.this);
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected void createAlertDialog(String title, String content, Context context){
|
||||
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(context);
|
||||
alertBuilder.setCancelable(true);
|
||||
alertBuilder.setTitle(""+title);
|
||||
alertBuilder.setMessage(""+content);
|
||||
alertBuilder.setNegativeButton("确定", new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
dialog.dismiss();
|
||||
}
|
||||
});
|
||||
alertBuilder.create().show();
|
||||
}
|
||||
|
||||
protected abstract void refresh();
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
/**
|
||||
* Created by 皮蛋 on 2021/9/16.
|
||||
*/
|
||||
|
||||
class Constant {
|
||||
|
||||
public static final String MESSAGE_ID = "messageId";
|
||||
public static final String USER_CREDENTIAL = "userCredential";
|
||||
public static final String APP_CREDENTIAL = "appCredential";
|
||||
public static final String RESOURCE_LIST = "resourceList";
|
||||
|
||||
public static final String XM = "XM";
|
||||
public static final String SFZH = "SFZH";
|
||||
public static final String PERSONDEPT = "PERSONDEPT";
|
||||
public static final String PERSONDEPTNAME = "PERSONDEPTNAME";
|
||||
|
||||
}
|
|
@ -0,0 +1,90 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.widget.Button;
|
||||
import android.widget.TextView;
|
||||
|
||||
import okhttp3.ResponseBody;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
import retrofit2.Retrofit;
|
||||
import retrofit2.converter.gson.GsonConverterFactory;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class FirstActivity extends BaseActivity {
|
||||
|
||||
private TextView tvApiResult;
|
||||
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_main); // 必须先加载布局,再初始化控件
|
||||
|
||||
// 初始化TextView(关键!绑定布局中的tv_api_result)
|
||||
tvApiResult = findViewById(R.id.tv_api_result);
|
||||
|
||||
Button btnTestApi = findViewById(R.id.btn_test_api);
|
||||
btnTestApi.setOnClickListener(v -> {
|
||||
tvApiResult.setText("测试中..."); // 此时tvApiResult已初始化,不会空指针
|
||||
fetchData();
|
||||
});
|
||||
|
||||
init(); // 调用父类方法
|
||||
}
|
||||
|
||||
|
||||
private void fetchData() {
|
||||
Retrofit retrofit = new Retrofit.Builder()
|
||||
.baseUrl("http://50.146.63.127:82/app/api/")
|
||||
// .baseUrl("http://218.92.207.242:50021/gwgl/")
|
||||
.addConverterFactory(GsonConverterFactory.create())
|
||||
.build();
|
||||
ApiService service = retrofit.create(ApiService.class);
|
||||
Call<ResponseBody> call = service.getData(); // 假设ApiService中定义的接口是正确的
|
||||
|
||||
call.enqueue(new Callback<ResponseBody>() {
|
||||
@Override
|
||||
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
|
||||
// 确保tvApiResult不为null(双重保险)
|
||||
if (tvApiResult == null) return;
|
||||
|
||||
if (response.isSuccessful()) {
|
||||
try {
|
||||
String result = response.body().string();
|
||||
tvApiResult.setText("请求成功:\n" + result);
|
||||
} catch (IOException e) {
|
||||
tvApiResult.setText("响应解析失败:\n" + e.getMessage());
|
||||
}
|
||||
} else {
|
||||
tvApiResult.setText("HTTP错误:\n状态码=" + response.code());
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<ResponseBody> call, Throwable t) {
|
||||
// 确保tvApiResult不为null(双重保险)
|
||||
if (tvApiResult == null) return;
|
||||
|
||||
// 显示具体错误原因(如网络不可达、超时等)
|
||||
String errorMsg = "请求失败:\n";
|
||||
if (t.getMessage() != null) {
|
||||
errorMsg += t.getMessage();
|
||||
} else {
|
||||
errorMsg += "未知错误";
|
||||
}
|
||||
tvApiResult.setText(errorMsg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void refresh() {
|
||||
// 寻址成功后,在这跳转下个页面
|
||||
startActivity(new Intent(this, MainActivity.class));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.os.Bundle;
|
||||
|
||||
public class MainActivity extends BaseActivity {
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_main);
|
||||
// 所有其它页面均继承BaseActivity
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void refresh() {
|
||||
// 不用实现任何功能
|
||||
}
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.util.Log;
|
||||
|
||||
import com.acrabsoft.sdk.AppStoreApplication;
|
||||
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Created by 皮蛋 on 2021/9/15.
|
||||
*/
|
||||
|
||||
public class MyApplication extends AppStoreApplication {
|
||||
|
||||
|
||||
public static List<Activity> activitys = new ArrayList<>();
|
||||
|
||||
private static MyApplication instance;
|
||||
|
||||
@Override
|
||||
public void onCreate() {
|
||||
super.onCreate();
|
||||
instance = this;
|
||||
registerActivityLifecycleCallbacks(new MyLifecycleHandler(MyApplication.this));
|
||||
}
|
||||
|
||||
public static MyApplication getInstance() {
|
||||
return instance;
|
||||
}
|
||||
|
||||
public static void finishAll(){
|
||||
if(activitys!=null){
|
||||
Log.e("MyApplication", "activitys -->"+activitys.size());
|
||||
|
||||
Iterator<Activity> iterator = activitys.iterator();
|
||||
while(iterator.hasNext()){
|
||||
Activity activity = iterator.next();
|
||||
activity.finish();
|
||||
iterator.remove(); //注意这个地方
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,48 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.Application;
|
||||
import android.content.Context;
|
||||
import android.os.Bundle;
|
||||
import android.util.Log;
|
||||
|
||||
public class MyLifecycleHandler implements Application.ActivityLifecycleCallbacks {
|
||||
private Context context;
|
||||
|
||||
private String TAG = "MyLifecycleHandler";
|
||||
|
||||
protected MyLifecycleHandler(Context context){
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
|
||||
Log.e(TAG, "onActivityCreated");
|
||||
MyApplication.getInstance().activitys.add(activity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityStarted(Activity activity) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityResumed(Activity activity) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityPaused(Activity activity) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityStopped(Activity activity) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivityDestroyed(Activity activity) {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,282 @@
|
|||
package com.pxkj.jwzs;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.content.SharedPreferences.Editor;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Base64;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.ObjectInputStream;
|
||||
import java.io.ObjectOutputStream;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
public class SpUtils {
|
||||
|
||||
private static SharedPreferences sp;
|
||||
|
||||
private static SharedPreferences getSp(Context context) {
|
||||
if (sp == null) {
|
||||
sp = context.getSharedPreferences("SpUtil22", Context.MODE_PRIVATE);
|
||||
}
|
||||
return sp;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 存入字符串
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 字符串的键
|
||||
* @param value 字符串的值
|
||||
*/
|
||||
public static void putString(Context context, String key, String value) {
|
||||
SharedPreferences preferences = getSp(context);
|
||||
//存入数据
|
||||
Editor editor = preferences.edit();
|
||||
editor.putString(key, value);
|
||||
editor.commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取字符串
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 字符串的键
|
||||
* @return 得到的字符串
|
||||
*/
|
||||
public static String getString(Context context, String key) {
|
||||
SharedPreferences preferences = getSp(context);
|
||||
return preferences.getString(key, "");
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取字符串
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 字符串的键
|
||||
* @param value 字符串的默认值
|
||||
* @return 得到的字符串
|
||||
*/
|
||||
public static String getString(Context context, String key, String value) {
|
||||
SharedPreferences preferences = getSp(context);
|
||||
return preferences.getString(key, value);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存布尔值
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param value 值
|
||||
*/
|
||||
public static void putBoolean(Context context, String key, boolean value) {
|
||||
SharedPreferences sp = getSp(context);
|
||||
Editor editor = sp.edit();
|
||||
editor.putBoolean(key, value);
|
||||
editor.commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取布尔值
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param defValue 默认值
|
||||
* @return 返回保存的值
|
||||
*/
|
||||
public static boolean getBoolean(Context context, String key, boolean defValue) {
|
||||
SharedPreferences sp = getSp(context);
|
||||
return sp.getBoolean(key, defValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存long值
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param value 值
|
||||
*/
|
||||
public static void putLong(Context context, String key, long value) {
|
||||
SharedPreferences sp = getSp(context);
|
||||
Editor editor = sp.edit();
|
||||
editor.putLong(key, value);
|
||||
editor.commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取long值
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param defValue 默认值
|
||||
* @return 保存的值
|
||||
*/
|
||||
public static long getLong(Context context, String key, long defValue) {
|
||||
SharedPreferences sp = getSp(context);
|
||||
return sp.getLong(key, defValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存int值
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param value 值
|
||||
*/
|
||||
public static void putInt(Context context, String key, int value) {
|
||||
SharedPreferences sp = getSp(context);
|
||||
Editor editor = sp.edit();
|
||||
editor.putInt(key, value);
|
||||
editor.commit();
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取long值
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param defValue 默认值
|
||||
* @return 保存的值
|
||||
*/
|
||||
public static int getInt(Context context, String key, int defValue) {
|
||||
SharedPreferences sp = getSp(context);
|
||||
return sp.getInt(key, defValue);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存对象
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param obj 要保存的对象(Serializable的子类)
|
||||
* @param <T> 泛型定义
|
||||
*/
|
||||
public static <T extends Serializable> void putObject(Context context, String key, T obj) {
|
||||
try {
|
||||
put(context, key, obj);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取对象
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param <T> 指定泛型
|
||||
* @return 泛型对象
|
||||
*/
|
||||
public static <T extends Serializable> T getObject(Context context, String key) {
|
||||
try {
|
||||
return (T) get(context, key);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 存储List集合
|
||||
* @param context 上下文
|
||||
* @param key 存储的键
|
||||
* @param list 存储的集合
|
||||
*/
|
||||
public static void putList(Context context, String key, List<? extends Serializable> list) {
|
||||
try {
|
||||
put(context, key, list);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取List集合
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param <E> 指定泛型
|
||||
* @return List集合
|
||||
*/
|
||||
public static <E extends Serializable> List<E> getList(Context context, String key) {
|
||||
try {
|
||||
return (List<E>) get(context, key);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**
|
||||
* 存储Map集合
|
||||
* @param context 上下文
|
||||
* @param key 键
|
||||
* @param map 存储的集合
|
||||
* @param <K> 指定Map的键
|
||||
* @param <V> 指定Map的值
|
||||
*/
|
||||
public static <K extends Serializable, V extends Serializable> void putMap(Context context,
|
||||
String key, Map<K, V> map)
|
||||
{
|
||||
try {
|
||||
put(context, key, map);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
public static <K extends Serializable, V extends Serializable> Map<K, V> getMap(Context context,
|
||||
String key)
|
||||
{
|
||||
try {
|
||||
return (Map<K, V>) get(context, key);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
/**存储对象*/
|
||||
private static void put(Context context, String key, Object obj)
|
||||
throws IOException
|
||||
{
|
||||
if (obj == null) {//判断对象是否为空
|
||||
return;
|
||||
}
|
||||
ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
||||
ObjectOutputStream oos = null;
|
||||
oos = new ObjectOutputStream(baos);
|
||||
oos.writeObject(obj);
|
||||
// 将对象放到OutputStream中
|
||||
// 将对象转换成byte数组,并将其进行base64编码
|
||||
String objectStr = new String(Base64.encode(baos.toByteArray(), Base64.DEFAULT));
|
||||
baos.close();
|
||||
oos.close();
|
||||
|
||||
putString(context, key, objectStr);
|
||||
}
|
||||
|
||||
/**获取对象*/
|
||||
private static Object get(Context context, String key)
|
||||
throws IOException, ClassNotFoundException
|
||||
{
|
||||
String wordBase64 = getString(context, key);
|
||||
// 将base64格式字符串还原成byte数组
|
||||
if (TextUtils.isEmpty(wordBase64)) { //不可少,否则在下面会报java.io.StreamCorruptedException
|
||||
return null;
|
||||
}
|
||||
byte[] objBytes = Base64.decode(wordBase64.getBytes(), Base64.DEFAULT);
|
||||
ByteArrayInputStream bais = new ByteArrayInputStream(objBytes);
|
||||
ObjectInputStream ois = new ObjectInputStream(bais);
|
||||
// 将byte数组转换成product对象
|
||||
Object obj = ois.readObject();
|
||||
bais.close();
|
||||
ois.close();
|
||||
return obj;
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:aapt="http://schemas.android.com/aapt"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z">
|
||||
<aapt:attr name="android:fillColor">
|
||||
<gradient
|
||||
android:endX="85.84757"
|
||||
android:endY="92.4963"
|
||||
android:startX="42.9492"
|
||||
android:startY="49.59793"
|
||||
android:type="linear">
|
||||
<item
|
||||
android:color="#44000000"
|
||||
android:offset="0.0" />
|
||||
<item
|
||||
android:color="#00000000"
|
||||
android:offset="1.0" />
|
||||
</gradient>
|
||||
</aapt:attr>
|
||||
</path>
|
||||
<path
|
||||
android:fillColor="#FFFFFF"
|
||||
android:fillType="nonZero"
|
||||
android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z"
|
||||
android:strokeWidth="1"
|
||||
android:strokeColor="#00000000" />
|
||||
</vector>
|
|
@ -0,0 +1,170 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="108dp"
|
||||
android:height="108dp"
|
||||
android:viewportWidth="108"
|
||||
android:viewportHeight="108">
|
||||
<path
|
||||
android:fillColor="#3DDC84"
|
||||
android:pathData="M0,0h108v108h-108z" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M9,0L9,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,0L19,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M29,0L29,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M39,0L39,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M49,0L49,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M59,0L59,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M69,0L69,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M79,0L79,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M89,0L89,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M99,0L99,108"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,9L108,9"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,19L108,19"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,29L108,29"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,39L108,39"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,49L108,49"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,59L108,59"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,69L108,69"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,79L108,79"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,89L108,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M0,99L108,99"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,29L89,29"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,39L89,39"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,49L89,49"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,59L89,59"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,69L89,69"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M19,79L89,79"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M29,19L29,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M39,19L39,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M49,19L49,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M59,19L59,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M69,19L69,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
<path
|
||||
android:fillColor="#00000000"
|
||||
android:pathData="M79,19L79,89"
|
||||
android:strokeWidth="0.8"
|
||||
android:strokeColor="#33FFFFFF" />
|
||||
</vector>
|
|
@ -0,0 +1,33 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
tools:context=".MainActivity">
|
||||
|
||||
<Button
|
||||
android:id="@+id/btn_test_api"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:text="测试接口"
|
||||
android:layout_marginTop="32dp"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_api_result"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="32dp"
|
||||
android:layout_marginHorizontal="16dp"
|
||||
android:padding="16dp"
|
||||
android:background="#F0F0F0"
|
||||
android:text="点击按钮测试接口..."
|
||||
android:textColor="#333333"
|
||||
app:layout_constraintEnd_toEndOf="parent"
|
||||
app:layout_constraintStart_toStartOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/btn_test_api" />
|
||||
|
||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
@ -0,0 +1,5 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<background android:drawable="@drawable/ic_launcher_background" />
|
||||
<foreground android:drawable="@drawable/ic_launcher_foreground" />
|
||||
</adaptive-icon>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue