<option name="TOOL_WINDOW_CONFIGURED_FILTER" value="Show only selected application" />
</component>
<component name="ChangeListManager">
- <list default="true" id="3cab4ae3-9bca-4cb9-b7a2-2861bcc36b52" name="Default Changelist" comment="">
+ <list default="true" id="3cab4ae3-9bca-4cb9-b7a2-2861bcc36b52" name="Default Changelist" comment="20200104">
<change beforePath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/cache.properties.lock" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/cache.properties.lock" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/fileHashes.bin" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/fileHashes.bin" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/fileSnapshots.bin" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/fileSnapshots.bin" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/fileSnapshotsToTreeSnapshotsIndex.bin" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/fileSnapshotsToTreeSnapshotsIndex.bin" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/taskArtifacts.bin" beforeDir="false" afterPath="$PROJECT_DIR$/.gradle/2.14.1/taskArtifacts/taskArtifacts.bin" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/caches/build_file_checksums.ser" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/caches/build_file_checksums.ser" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/.idea/gradle.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/gradle.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/.idea/libraries/Gradle____local_jars___E__android_workspace_icsupport_app_libs_okio_2_4_3_jar_unspecified_jar.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/libraries/Gradle____local_jars___D__workspace_icsupport_app_libs_okio_2_4_3_jar_unspecified_jar.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_support_annotations_25_1_0_jar.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/libraries/Gradle__com_android_support_support_annotations_25_1_0_jar.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/.idea/modules.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/modules.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/app.iml" beforeDir="false" afterPath="$PROJECT_DIR$/app/app.iml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/AndroidManifest.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/AndroidManifest.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/ICContentProvider.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/ICContentProvider.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/LocationClient.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/LocationClient.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/MainActivity.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/MainActivity.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/LBSHelper.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/LBSHelper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Runtime.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Runtime.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/AudioService.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/AudioService.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/heartRateStatus.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/heartRateStatus.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/CheckSIM.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/CheckSIM.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ContextProxy.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ContextProxy.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Logger.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Logger.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NetworkObservable.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NetworkObservable.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ServiceUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ServiceUtil.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/SimSignalUtil.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/SimSignalUtil.java" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/res/values/strings.xml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/icsupport.iml" beforeDir="false" afterPath="$PROJECT_DIR$/icsupport.iml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/local.properties" beforeDir="false" afterPath="$PROJECT_DIR$/local.properties" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/okio/okio.iml" beforeDir="false" afterPath="$PROJECT_DIR$/okio/okio.iml" afterDir="false" />
- <change beforePath="$PROJECT_DIR$/settings.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/settings.gradle" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/RxSocket.java" beforeDir="false" afterPath="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/RxSocket.java" afterDir="false" />
+ <change beforePath="$PROJECT_DIR$/library/build.gradle" beforeDir="false" afterPath="$PROJECT_DIR$/library/build.gradle" afterDir="false" />
</list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="SHOW_DIALOG" value="false" />
</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/java/com/ic/protocol/bean/StringMessage.java">
- <provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-209">
- <caret line="4" column="13" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" />
- </state>
- </provider>
- </entry>
- </file>
<file pinned="false" current-in-tab="true">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="3459">
- <caret line="480" column="55" selection-start-line="480" selection-start-column="55" selection-end-line="480" selection-end-column="55" />
+ <state relative-caret-position="205">
+ <caret line="187" column="33" lean-forward="true" selection-start-line="187" selection-start-column="33" selection-end-line="187" selection-end-column="33" />
<folding>
- <element signature="e#7211#8727#0" expanded="true" />
- <element signature="e#8726#8727#0" expanded="true" />
- <element signature="e#28402#28403#0" expanded="true" />
- <element signature="e#28499#28500#0" expanded="true" />
- <element signature="e#29332#29333#0" expanded="true" />
- <element signature="e#29370#29371#0" expanded="true" />
- <element signature="e#32566#32567#0" expanded="true" />
- <element signature="e#32593#32594#0" expanded="true" />
- <element signature="e#35757#35758#0" expanded="true" />
+ <element signature="e#4682#4683#0" expanded="true" />
+ <element signature="e#4771#4772#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/Context.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/SynchronousTime.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-114">
- <caret line="50" column="28" selection-start-line="50" selection-start-column="28" selection-end-line="50" selection-end-column="28" />
+ <state relative-caret-position="130">
+ <caret line="44" column="3" selection-start-line="44" selection-start-column="3" selection-end-line="46" selection-end-column="48" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/app/Service.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="190">
- <caret line="20" column="44" selection-start-line="20" selection-start-column="28" selection-end-line="20" selection-end-column="44" />
+ <state relative-caret-position="24">
+ <caret line="579" column="25" selection-start-line="579" selection-start-column="25" selection-end-line="579" selection-end-column="25" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Alarm.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Initialize.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="38">
- <caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
+ <state relative-caret-position="471">
+ <caret line="72" column="75" lean-forward="true" selection-start-line="72" selection-start-column="75" selection-end-line="72" selection-end-column="75" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="133">
- <caret line="12" column="36" selection-start-line="12" selection-start-column="36" selection-end-line="12" selection-end-column="36" />
+ <state relative-caret-position="228">
+ <caret line="581" column="50" selection-start-line="581" selection-start-column="50" selection-end-line="581" selection-end-column="50" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/AndroidManifest.xml">
+ <provider editor-type-id="android-manifest" />
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="229">
- <caret line="255" column="7" lean-forward="true" selection-start-line="255" selection-start-column="7" selection-end-line="255" selection-end-column="7" />
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state relative-caret-position="258">
+ <caret line="140" column="88" selection-start-line="140" selection-start-column="88" selection-end-line="140" selection-end-column="88" />
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ServiceUtil.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="513">
- <caret line="32" column="2" selection-start-line="32" selection-start-column="2" selection-end-line="32" selection-end-column="2" />
+ <state relative-caret-position="177">
+ <caret line="50" column="43" selection-start-line="50" selection-start-column="43" selection-end-line="50" selection-end-column="43" />
+ <folding>
+ <element signature="e#17063#17104#0" expanded="true" />
+ <element signature="e#17243#17284#0" expanded="true" />
+ <element signature="e#17375#17416#0" expanded="true" />
+ <element signature="e#17510#17551#0" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CustomDialog.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="143">
- <caret line="43" column="24" selection-start-line="43" selection-start-column="24" selection-end-line="43" selection-end-column="24" />
+ <state relative-caret-position="228">
+ <caret line="119" column="21" selection-start-line="119" selection-start-column="21" selection-end-line="119" selection-end-column="21" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</entry>
</file>
<file pinned="false" current-in-tab="false">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CustomNotification.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-1627">
- <caret line="120" column="41" selection-start-line="120" selection-start-column="41" selection-end-line="120" selection-end-column="41" />
+ <state relative-caret-position="2033">
+ <caret line="107" column="42" lean-forward="true" selection-start-line="86" selection-start-column="8" selection-end-line="107" selection-end-column="42" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
</component>
<component name="FindInProjectRecents">
<findStrings>
- <find>FLAG_UPDATE_CURRENT</find>
- <find>sc</find>
- <find>134217728</find>
- <find>EqcAlgorithmInterfaceMethod1</find>
- <find>waitForWifiListReply</find>
- <find>268435456</find>
- <find>simState</find>
- <find>PassData</find>
- <find>setSignalStrength</find>
- <find>268435462</find>
- <find>getInstance</find>
- <find>getStatusBarIconState</find>
- <find>isscre</find>
- <find>cachedir</find>
- <find>getExternalCacheDir</find>
- <find>NetworkObservable</find>
- <find>setHostAndPort</find>
- <find>port</find>
- <find>connectServer</find>
- <find>MyThread2</find>
- <find>is_allowed_in_sleep_mode</find>
- <find>onHeartAlarm</find>
- <find>LocationClient</find>
- <find>rx</find>
- <find>queue</find>
- <find>onStartCommand</find>
+ <find>ACTION_ALARM</find>
+ <find>heart</find>
+ <find>isHeartrRateExists</find>
<find>ACTION_EQC_ALARM</find>
- <find>newAPi</find>
- <find>send_at_to_update_lbs</find>
- <find>cmcm_call_eiot_into_powersave_mode</find>
+ <find>mProtocolAPI</find>
+ <find>AP00</find>
+ <find>strncpy</find>
+ <find>Echo</find>
+ <find>message</find>
+ <find>new_socket</find>
+ <find>send</find>
+ <find>mDeliver</find>
+ <find>setHeartAlarm</find>
+ <find>ACTION_STEP_COUNT_ALARM</find>
+ <find>SLEEP_ALARM</find>
+ <find>WAKE_ALARM</find>
+ <find>setAlarm</find>
+ <find>YUN_ALARM_CHANGE</find>
+ <find>SimSignalUtil</find>
+ <find>queue</find>
+ <find>SocketStatus</find>
+ <find>socketStatusListener</find>
+ <find>Stat</find>
+ <find>ProcessReceiver</find>
+ <find>CustomNotification</find>
+ <find>setWakeupAlarm</find>
+ <find>Open</find>
+ <find>ALARM</find>
+ <find>setExact</find>
+ <find>status</find>
</findStrings>
<replaceStrings>
<replace>CMDSPLIT</replace>
<component name="IdeDocumentHistory">
<option name="CHANGED_PATHS">
<list>
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/RxSocket.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/serverStatus.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/heartRateStatus.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/location.java" />
<option value="$PROJECT_DIR$/app/src/main/res/layout/activity_main.xml" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Config.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Update.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/VoiceContent.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/ParseUpdate.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/PassData.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/AudioService.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/CheckSIM.java" />
- <option value="$PROJECT_DIR$/app/src/main/AndroidManifest.xml" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/BootCompleteReceiver.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/CrashHandler.java" />
<option value="$PROJECT_DIR$/app/src/main/res/values/strings.xml" />
<option value="$PROJECT_DIR$/library/src/main/java/com/eiot/watch_lib/LauncherCtrl.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/ICContentProvider.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/SimSignalUtil.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NetworkObservable.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Runtime.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/MainActivity.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/LocationClient.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/LBSHelper.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java" />
- <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ServiceUtil.java" />
+ <option value="$PROJECT_DIR$/app/src/main/AndroidManifest.xml" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NetworkObservable.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/LocationClient.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/heartRateStatus.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ContextProxy.java" />
+ <option value="D:/incar/Downloads/test_srv.c" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Runtime.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Initialize.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/CheckSIM.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/RxSocket.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Logger.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CustomNotification.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CameraUtil.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CustomDialog.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java" />
<option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java" />
+ <option value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/SynchronousTime.java" />
</list>
</option>
</component>
<component name="ProjectFrameBounds" extendedState="6">
- <option name="x" value="459" />
- <option name="y" value="295" />
+ <option name="x" value="521" />
+ <option name="y" value="34" />
<option name="width" value="1278" />
<option name="height" value="728" />
</component>
<item name="protocol" type="cbb59c9e:AndroidPsiDirectoryNode" />
<item name="utils" type="462c0819:PsiDirectoryNode" />
</path>
- <path>
- <item name="icsupport" type="1abcf292:AndroidViewProjectNode" />
- <item name="app" type="feadf853:AndroidModuleNode" />
- <item name="res" type="d4f16f75:AndroidResFolderNode" />
- </path>
- <path>
- <item name="icsupport" type="1abcf292:AndroidViewProjectNode" />
- <item name="app" type="feadf853:AndroidModuleNode" />
- <item name="res" type="d4f16f75:AndroidResFolderNode" />
- <item name="values" type="ddeffd01:AndroidResFolderTypeNode" />
- </path>
- <path>
- <item name="icsupport" type="1abcf292:AndroidViewProjectNode" />
- <item name="library" type="feadf853:AndroidModuleNode" />
- </path>
<path>
<item name="icsupport" type="1abcf292:AndroidViewProjectNode" />
<item name="library" type="feadf853:AndroidModuleNode" />
- <item name="java" type="edd41e36:AndroidSourceTypeNode" />
- </path>
- <path>
- <item name="icsupport" type="1abcf292:AndroidViewProjectNode" />
- <item name="library" type="feadf853:AndroidModuleNode" />
- <item name="java" type="edd41e36:AndroidSourceTypeNode" />
- <item name="watch_lib" type="cbb59c9e:AndroidPsiDirectoryNode" />
</path>
<path>
<item name="icsupport" type="1abcf292:AndroidViewProjectNode" />
<property name="SHARE_PROJECT_CONFIGURATION_FILES" value="true" />
<property name="SHOW_ALL_PROCESSES" value="false" />
<property name="android.sdk.path" value="E:/Android/sdk" />
- <property name="last_opened_file_path" value="$PROJECT_DIR$/../eqclauncher/library" />
+ <property name="last_opened_file_path" value="$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils" />
<property name="not.eligible.for.single.variant.sync" value="true" />
<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" />
<property name="settings.editor.selected.configurable" value="AndroidSdkUpdater" />
</component>
+ <component name="PsdUISettings">
+ <option name="LAST_EDITED_BUILD_TYPE" value="release" />
+ </component>
<component name="RecentsManager">
<key name="CopyClassDialog.RECENTS_KEY">
- <recent name="com.ic.protocol" />
<recent name="com.ic.protocol.utils" />
+ <recent name="com.ic.protocol.service" />
+ <recent name="com.ic.protocol" />
</key>
<key name="CopyFile.RECENT_KEYS">
+ <recent name="D:\workspace\icsupport\app\src\main\java\com\ic\protocol\utils" />
<recent name="D:\workspace\icsupport\app" />
<recent name="D:\workspace\icsupport\app\src\main\java\com\ic\protocol" />
<recent name="E:\android_workspace\icsupport\app\src\main\java\com\ic\protocol\bean" />
<recent name="E:\android_workspace\icsupport\app\src\main\java\com\ic\protocol\service" />
- <recent name="E:\android_workspace\icsupport\app\src\main\java\com\ic\protocol" />
</key>
</component>
<component name="RunDashboard">
</component>
<component name="ToolWindowManager">
<frame x="-8" y="-8" width="1858" height="1096" extended-state="6" />
+ <editor active="true" />
<layout>
- <window_info id="Captures" order="0" side_tool="true" weight="0.25" />
- <window_info content_ui="combo" id="Project" order="1" sideWeight="0.49541286" visible="true" weight="0.22135706" />
+ <window_info id="Captures" order="0" sideWeight="0.50390625" side_tool="true" visible="true" weight="0.19299221" />
+ <window_info content_ui="combo" id="Project" order="1" sideWeight="0.49609375" visible="true" weight="0.19299221" />
<window_info id="Structure" order="2" side_tool="true" />
<window_info id="Favorites" order="3" sideWeight="0.5045872" side_tool="true" weight="0.3293461" />
<window_info id="Build Variants" order="4" side_tool="true" />
<window_info id="Resources Explorer" order="7" />
<window_info id="Capture Tool" order="8" />
<window_info anchor="bottom" id="Run" order="0" />
- <window_info active="true" anchor="bottom" id="Logcat" order="1" visible="true" weight="0.52286905" />
- <window_info anchor="bottom" id="TODO" order="2" weight="0.32917964" />
- <window_info anchor="bottom" id="Debug" order="3" weight="0.2765073" />
+ <window_info active="true" anchor="bottom" id="Logcat" order="1" visible="true" weight="0.46777546" />
+ <window_info anchor="bottom" id="TODO" order="2" weight="0.32848233" />
+ <window_info anchor="bottom" id="Debug" order="3" weight="0.42099792" />
<window_info anchor="bottom" id="Terminal" order="4" weight="0.32744282" />
<window_info anchor="bottom" id="Event Log" order="5" side_tool="true" />
- <window_info anchor="bottom" id="Version Control" order="6" />
+ <window_info anchor="bottom" id="Version Control" order="6" weight="0.32952183" />
<window_info anchor="bottom" id="Build" order="7" weight="0.32952183" />
<window_info anchor="bottom" id="Android Profiler" order="8" />
- <window_info anchor="bottom" id="Find" order="9" weight="0.4864865" />
+ <window_info anchor="bottom" id="Find" order="9" weight="0.35862786" />
<window_info anchor="right" id="Capture Analysis" order="0" />
<window_info anchor="right" id="Gradle" order="1" weight="0.3293461" />
<window_info anchor="right" id="Theme Preview" order="2" />
<properties />
<option name="timeStamp" value="2" />
</line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java</url>
+ <line>298</line>
+ <properties />
+ <option name="timeStamp" value="41" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java</url>
+ <line>301</line>
+ <properties />
+ <option name="timeStamp" value="44" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java</url>
+ <line>300</line>
+ <properties />
+ <option name="timeStamp" value="45" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java</url>
+ <line>25</line>
+ <properties />
+ <option name="timeStamp" value="46" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java</url>
+ <line>129</line>
+ <properties />
+ <option name="timeStamp" value="47" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java</url>
+ <line>128</line>
+ <properties />
+ <option name="timeStamp" value="48" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java</url>
+ <line>124</line>
+ <properties />
+ <option name="timeStamp" value="49" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Initialize.java</url>
+ <line>73</line>
+ <properties />
+ <option name="timeStamp" value="50" />
+ </line-breakpoint>
+ <line-breakpoint enabled="true" type="java-line">
+ <url>file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Initialize.java</url>
+ <line>72</line>
+ <properties />
+ <option name="timeStamp" value="52" />
+ </line-breakpoint>
</breakpoints>
</breakpoint-manager>
</component>
<component name="debuggerHistoryManager">
<expressions id="watch">
+ <expression>
+ <expression-string>Build.VERSION.SDK_INT >= 19</expression-string>
+ <language-id>JAVA</language-id>
+ <evaluation-mode>EXPRESSION</evaluation-mode>
+ </expression>
<expression>
<expression-string>"33".split("#")</expression-string>
<language-id>JAVA</language-id>
</expressions>
</component>
<component name="editorHistoryManager">
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/DeviceInfoUtil.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ServiceUtil.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-2570">
- <caret line="18" column="39" selection-start-line="18" selection-start-column="39" selection-end-line="18" selection-end-column="39" />
- <folding>
- <element signature="e#5048#5049#0" expanded="true" />
- </folding>
+ <state relative-caret-position="249">
+ <caret line="30" column="21" selection-start-line="30" selection-start-column="21" selection-end-line="30" selection-end-column="21" />
</state>
</provider>
</entry>
- <entry file="file://E:/Android/sdk/sources/android-25/android/provider/Settings.java" />
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/FileCache.java">
+ <entry file="file://$PROJECT_DIR$/app/build.gradle">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="205">
- <caret line="63" column="16" selection-start-line="63" selection-start-column="16" selection-end-line="63" selection-end-column="16" />
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state relative-caret-position="171">
+ <caret line="9" column="30" lean-forward="true" selection-start-line="9" selection-start-column="30" selection-end-line="9" selection-end-column="30" />
+ </state>
+ </provider>
+ </entry>
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/app/Service.class">
+ <provider selected="true" editor-type-id="text-editor">
+ <state relative-caret-position="190">
+ <caret line="20" column="44" selection-start-line="20" selection-start-column="28" selection-end-line="20" selection-end-column="44" />
</state>
</provider>
</entry>
- <entry file="file://E:/Android/sdk/sources/android-25/android/app/PendingIntent.java" />
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Update.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/BootCompleteReceiver.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="447">
- <caret line="247" column="30" selection-start-line="247" selection-start-column="30" selection-end-line="247" selection-end-column="30" />
+ <state relative-caret-position="228">
+ <caret line="12" column="3" lean-forward="true" selection-start-line="12" selection-start-column="3" selection-end-line="12" selection-end-column="3" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/VoiceContent.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/net/NetworkInfo.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="465">
- <caret line="38" selection-start-line="38" selection-end-line="38" />
+ <state relative-caret-position="143">
+ <caret line="42" column="19" selection-start-line="42" selection-start-column="19" selection-end-line="42" selection-end-column="19" />
<folding>
- <element signature="imports" expanded="true" />
+ <element signature="e#961#962#0" expanded="true" />
+ <element signature="e#1012#1013#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/Intent.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/LBSHelper.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="158">
- <caret line="283" column="50" selection-start-line="283" selection-start-column="28" selection-end-line="283" selection-end-column="50" />
+ <state relative-caret-position="230">
+ <caret line="250" column="62" lean-forward="true" selection-start-line="250" selection-start-column="62" selection-end-line="250" selection-end-column="62" />
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/java/lang/String.class">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/Context.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="2109">
- <caret line="170" column="15" selection-start-line="170" selection-start-column="15" selection-end-line="170" selection-end-column="15" />
- <folding>
- <element signature="e#4574#4575#0" expanded="true" />
- <element signature="e#4625#4626#0" expanded="true" />
- </folding>
+ <state relative-caret-position="-114">
+ <caret line="50" column="28" selection-start-line="50" selection-start-column="28" selection-end-line="50" selection-end-column="28" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/PassData.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Config.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="475">
- <caret line="25" column="10" selection-start-line="25" selection-start-column="10" selection-end-line="25" selection-end-column="10" />
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state relative-caret-position="38">
+ <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/ic/protocol/ParseUpdate.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ConnectionListener.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="231">
- <caret line="323" column="13" lean-forward="true" selection-start-line="323" selection-start-column="13" selection-end-line="323" selection-end-column="13" />
+ <state relative-caret-position="95">
+ <caret line="5" column="35" selection-start-line="5" selection-start-column="17" selection-end-line="5" selection-end-column="35" />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/LocationClient.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state relative-caret-position="493">
+ <caret line="601" column="8" selection-start-line="601" selection-start-column="8" selection-end-line="601" selection-end-column="8" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/base/AbstractInvokeHandlerService.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/ContextWrapper.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="152">
- <caret line="12" column="4" selection-start-line="12" selection-start-column="4" selection-end-line="12" selection-end-column="4" />
+ <state relative-caret-position="222">
+ <caret line="368" column="18" selection-start-line="368" selection-start-column="18" selection-end-line="368" selection-end-column="18" />
+ <folding>
+ <element signature="e#10776#10777#0" expanded="true" />
+ <element signature="e#10827#10828#0" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/CheckSIM.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/Intent.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="87">
- <caret line="68" column="19" selection-start-line="68" selection-start-column="19" selection-end-line="68" selection-end-column="19" />
+ <state relative-caret-position="195">
+ <caret line="576" column="18" selection-start-line="576" selection-start-column="18" selection-end-line="576" selection-end-column="18" />
<folding>
- <element signature="imports" expanded="true" />
+ <element signature="e#25167#25168#0" expanded="true" />
+ <element signature="e#25218#25219#0" expanded="true" />
+ <element signature="e#31946#31947#0" expanded="true" />
+ <element signature="e#31997#31998#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/AudioService.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/app/PendingIntent.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="136">
- <caret line="85" column="33" selection-start-line="85" selection-start-column="33" selection-end-line="85" selection-end-column="33" />
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state relative-caret-position="222">
+ <caret line="50" column="32" selection-start-line="50" selection-start-column="32" selection-end-line="50" selection-end-column="32" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/AndroidManifest.xml">
- <provider editor-type-id="android-manifest" />
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/app/AlarmManager.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="378">
- <caret line="134" selection-start-line="134" selection-end-line="134" />
+ <state relative-caret-position="222">
+ <caret line="48" column="16" selection-start-line="48" selection-start-column="16" selection-end-line="48" selection-end-column="16" />
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/os/PowerManager.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/heartRateStatus.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="209">
- <caret line="14" column="57" lean-forward="true" selection-start-line="14" selection-start-column="57" selection-end-line="14" selection-end-column="57" />
+ <state relative-caret-position="271">
+ <caret line="22" lean-forward="true" selection-start-line="22" selection-end-line="22" />
+ <folding>
+ <element signature="e#407#408#0" expanded="true" />
+ <element signature="e#434#435#0" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NetworkObservable.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="703">
- <caret line="37" column="2" selection-start-line="37" selection-start-column="2" selection-end-line="37" selection-end-column="2" />
+ <state relative-caret-position="95">
+ <caret line="16" column="74" lean-forward="true" selection-start-line="16" selection-start-column="74" selection-end-line="16" selection-end-column="74" />
<folding>
- <element signature="imports" expanded="true" />
+ <element signature="e#2697#2698#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/res/values/strings.xml">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="38">
- <caret line="2" column="90" selection-start-line="2" selection-start-column="90" selection-end-line="2" selection-end-column="90" />
+ <state relative-caret-position="133">
+ <caret line="13" column="36" selection-start-line="13" selection-start-column="36" selection-end-line="13" selection-end-column="36" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/BootCompleteReceiver.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/java/util/Calendar.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="228">
- <caret line="12" column="3" selection-start-line="12" selection-start-column="3" selection-end-line="12" selection-end-column="3" />
+ <state relative-caret-position="253">
+ <caret line="116" column="20" selection-start-line="116" selection-start-column="20" selection-end-line="116" selection-end-column="20" />
<folding>
- <element signature="imports" expanded="true" />
+ <element signature="e#3672#3673#0" expanded="true" />
+ <element signature="e#3723#3724#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/pm/PackageManager.class">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/java/lang/Character.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="35">
- <caret line="158" column="60" selection-start-line="158" selection-start-column="60" selection-end-line="158" selection-end-column="60" />
+ <state relative-caret-position="196">
+ <caret line="58" column="29" selection-start-line="58" selection-start-column="29" selection-end-line="58" selection-end-column="29" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/ICApplication.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ContextProxy.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="344">
- <caret line="83" column="38" selection-start-line="83" selection-start-column="38" selection-end-line="83" selection-end-column="38" />
- <folding>
- <element signature="imports" expanded="true" />
- </folding>
+ <state relative-caret-position="92">
+ <caret line="424" column="23" selection-start-line="428" selection-start-column="17" selection-end-line="428" selection-end-column="21" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/library/src/main/java/com/eiot/watch_lib/LauncherCtrl.java">
- <provider selected="true" editor-type-id="text-editor" />
- </entry>
- <entry file="file://$PROJECT_DIR$/library/src/main/java/com/eiot/watch_lib/LauncherCtrl.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Connection.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="2185">
- <caret line="123" column="5" selection-start-line="123" selection-start-column="5" selection-end-line="123" selection-end-column="5" />
+ <state relative-caret-position="285">
+ <caret line="15" column="7" selection-start-line="15" selection-start-column="7" selection-end-line="15" selection-end-column="7" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/DBHelper.java">
+ <entry file="file://D:/incar/Downloads/tcp_server.c">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="128">
- <caret line="959" column="3" lean-forward="true" selection-start-line="959" selection-start-column="3" selection-end-line="959" selection-end-column="3" />
+ <state relative-caret-position="-4712">
+ <caret line="16" column="1" lean-forward="true" selection-start-line="16" selection-start-column="1" selection-end-line="16" selection-end-column="1" />
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/ContentProvider.class">
+ <entry file="file://D:/incar/Downloads/test_srv.c">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="171">
- <caret line="26" column="25" selection-start-line="26" selection-start-column="25" selection-end-line="26" selection-end-column="25" />
- <folding>
- <element signature="e#782#783#0" expanded="true" />
- <element signature="e#833#834#0" expanded="true" />
- </folding>
+ <state relative-caret-position="95">
+ <caret line="407" column="51" lean-forward="true" selection-start-line="407" selection-start-column="51" selection-end-line="407" selection-end-column="51" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/ICContentProvider.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Runtime.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-301">
- <caret line="137" column="83" selection-start-line="137" selection-start-column="83" selection-end-line="137" selection-end-column="83" />
+ <state relative-caret-position="-310">
+ <caret line="93" column="2" lean-forward="true" selection-start-line="93" selection-start-column="2" selection-end-line="93" selection-end-column="2" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/CrashHandler.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/telephony/TelephonyManager.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="56">
- <caret line="98" selection-start-line="98" selection-end-line="108" selection-end-column="54" />
- <folding>
- <element signature="imports" expanded="true" />
- <element signature="e#3004#3029#0" expanded="true" />
- </folding>
+ <state relative-caret-position="218">
+ <caret line="66" column="43" selection-start-line="66" selection-start-column="28" selection-end-line="66" selection-end-column="43" />
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/ContextWrapper.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state relative-caret-position="320">
+ <caret line="220" column="43" lean-forward="true" selection-start-line="220" selection-start-column="43" selection-end-line="220" selection-end-column="43" />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/CheckSIM.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="216">
- <caret line="165" lean-forward="true" selection-start-line="165" selection-end-line="165" />
+ <state relative-caret-position="282">
+ <caret line="90" column="70" lean-forward="true" selection-start-line="90" selection-start-column="70" selection-end-line="90" selection-end-column="70" />
<folding>
- <element signature="e#4410#4411#0" expanded="true" />
- <element signature="e#4461#4462#0" expanded="true" />
+ <element signature="e#612#1023#0" expanded="true" />
+ <element signature="e#1022#1023#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.1.0/d4a0c3bc36ac0ece84cdf7aa08b18c344b467238/rxjava-1.1.0-sources.jar!/rx/subjects/BehaviorSubject.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Util.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="143">
- <caret line="154" column="16" selection-start-line="154" selection-start-column="16" selection-end-line="154" selection-end-column="16" />
+ <state relative-caret-position="196">
+ <caret line="375" column="24" selection-start-line="375" selection-start-column="24" selection-end-line="375" selection-end-column="24" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NetworkObservable.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/Constants.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="1102">
- <caret line="71" lean-forward="true" selection-start-line="71" selection-end-line="71" />
+ <state relative-caret-position="234">
+ <caret line="247" column="76" selection-start-line="247" selection-start-column="66" selection-end-line="247" selection-end-column="76" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Connection.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="133">
- <caret line="7" column="7" selection-start-line="7" selection-start-column="7" selection-end-line="7" selection-end-column="7" />
+ <state relative-caret-position="350">
+ <caret line="25" column="62" selection-start-line="25" selection-start-column="62" selection-end-line="25" selection-end-column="62" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/base/BaseService.java">
+ <entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.1.0/d4a0c3bc36ac0ece84cdf7aa08b18c344b467238/rxjava-1.1.0-sources.jar!/rx/Observable.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="133">
- <caret line="8" column="7" selection-start-line="8" selection-start-column="7" selection-end-line="8" selection-end-column="7" />
+ <state relative-caret-position="19">
+ <caret line="7927" selection-start-line="7927" selection-end-line="7927" />
+ <folding>
+ <element signature="e#412406#412407#0" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/base/AbstractConnectionService.java">
+ <entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.1.0/d4a0c3bc36ac0ece84cdf7aa08b18c344b467238/rxjava-1.1.0-sources.jar!/rx/observers/SafeSubscriber.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="155">
- <caret line="18" column="4" selection-start-line="18" selection-start-column="4" selection-end-line="18" selection-end-column="4" />
+ <state relative-caret-position="161">
+ <caret line="138" selection-start-line="138" selection-end-line="138" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Runtime.java">
+ <entry file="jar://$USER_HOME$/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.1.0/d4a0c3bc36ac0ece84cdf7aa08b18c344b467238/rxjava-1.1.0-sources.jar!/rx/internal/schedulers/ScheduledAction.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state relative-caret-position="161">
+ <caret line="59" selection-start-line="59" selection-end-line="59" />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/RxSocket.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="165">
- <caret line="224" column="25" lean-forward="true" selection-start-line="224" selection-start-column="25" selection-end-line="224" selection-end-column="25" />
+ <state relative-caret-position="190">
+ <caret line="391" column="17" selection-start-line="391" selection-start-column="8" selection-end-line="391" selection-end-column="17" />
<folding>
<element signature="imports" expanded="true" />
+ <element signature="e#2519#2520#0" expanded="true" />
+ <element signature="e#2555#2556#0" expanded="true" />
+ <element signature="e#7855#7856#0" expanded="true" />
+ <element signature="e#7889#7890#0" expanded="true" />
+ <element signature="e#10281#10282#0" expanded="true" />
+ <element signature="e#10316#10317#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CellInfoUtil.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/java/lang/Enum.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="76">
- <caret line="9" column="13" selection-start-line="9" selection-start-column="13" selection-end-line="9" selection-end-column="13" />
+ <state relative-caret-position="161">
+ <caret line="14" column="24" selection-start-line="14" selection-start-column="24" selection-end-line="14" selection-end-column="24" />
+ <folding>
+ <element signature="e#373#374#0" expanded="true" />
+ <element signature="e#424#425#0" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/FileOutputUtil.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/StringMessage.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-22">
- <caret line="91" column="69" lean-forward="true" selection-start-line="91" selection-start-column="69" selection-end-line="91" selection-end-column="69" />
+ <state relative-caret-position="190">
+ <caret line="34" column="16" selection-start-line="34" selection-start-column="16" selection-end-line="34" selection-end-column="16" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/SimSignalUtil.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/Logger.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="922">
- <caret line="93" lean-forward="true" selection-start-line="93" selection-end-line="93" />
+ <state relative-caret-position="180">
+ <caret line="42" column="32" lean-forward="true" selection-start-line="42" selection-start-column="32" selection-end-line="42" selection-end-column="32" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/MainActivity.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/os/PowerManager.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="159">
- <caret line="66" lean-forward="true" selection-start-line="66" selection-end-line="66" />
+ <state relative-caret-position="228">
+ <caret line="15" column="50" lean-forward="true" selection-start-line="15" selection-start-column="50" selection-end-line="15" selection-end-column="50" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CameraUtil.java">
+ <provider selected="true" editor-type-id="text-editor">
+ <state relative-caret-position="371">
+ <caret line="74" column="30" selection-start-line="74" selection-start-column="30" selection-end-line="74" selection-end-column="30" />
+ </state>
+ </provider>
+ </entry>
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ProcessReceiver.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="193">
- <caret line="201" column="16" selection-start-line="201" selection-start-column="16" selection-end-line="201" selection-end-column="16" />
+ <state relative-caret-position="177">
+ <caret line="50" column="43" selection-start-line="50" selection-start-column="43" selection-end-line="50" selection-end-column="43" />
<folding>
- <element signature="e#3182#3183#0" expanded="true" />
- <element signature="e#3271#3272#0" expanded="true" />
+ <element signature="e#17063#17104#0" expanded="true" />
+ <element signature="e#17243#17284#0" expanded="true" />
+ <element signature="e#17375#17416#0" expanded="true" />
+ <element signature="e#17510#17551#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/LocationClient.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CustomNotification.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="194">
- <caret line="693" selection-start-line="693" selection-end-line="693" />
+ <state relative-caret-position="2033">
+ <caret line="107" column="42" lean-forward="true" selection-start-line="86" selection-start-column="8" selection-end-line="107" selection-end-column="42" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/telephony/TelephonyManager.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/CustomDialog.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="336">
- <caret line="95" column="24" selection-start-line="95" selection-start-column="24" selection-end-line="95" selection-end-column="24" />
+ <state relative-caret-position="228">
+ <caret line="119" column="21" selection-start-line="119" selection-start-column="21" selection-end-line="119" selection-end-column="21" />
<folding>
- <element signature="e#4052#4053#0" expanded="true" />
- <element signature="e#4103#4104#0" expanded="true" />
+ <element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/LBSHelper.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/AndroidManifest.xml">
+ <provider editor-type-id="android-manifest" />
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="135">
- <caret line="245" column="65" selection-start-line="245" selection-start-column="65" selection-end-line="245" selection-end-column="65" />
+ <state relative-caret-position="258">
+ <caret line="140" column="88" selection-start-line="140" selection-start-column="88" selection-end-line="140" selection-end-column="88" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/StringMessage.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/os/Handler.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-209">
- <caret line="4" column="13" selection-start-line="4" selection-start-column="13" selection-end-line="4" selection-end-column="13" />
+ <state relative-caret-position="161">
+ <caret line="70" column="25" selection-start-line="70" selection-start-column="25" selection-end-line="70" selection-end-column="25" />
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java">
+ <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/java/lang/String.class">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="143">
- <caret line="43" column="24" selection-start-line="43" selection-start-column="24" selection-end-line="43" selection-end-column="24" />
+ <state relative-caret-position="161">
+ <caret line="170" column="15" selection-start-line="170" selection-start-column="15" selection-end-line="170" selection-end-column="15" />
<folding>
- <element signature="imports" expanded="true" />
+ <element signature="e#4574#4575#0" expanded="true" />
+ <element signature="e#4625#4626#0" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/adapter/protocolAPIHelper.java">
- <provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-1627">
- <caret line="120" column="41" selection-start-line="120" selection-start-column="41" selection-end-line="120" selection-end-column="41" />
- </state>
- </provider>
- </entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/ServiceUtil.java">
- <provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="513">
- <caret line="32" column="2" selection-start-line="32" selection-start-column="2" selection-end-line="32" selection-end-column="2" />
- </state>
- </provider>
- </entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/KeepAlive.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Deliver.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="229">
- <caret line="255" column="7" lean-forward="true" selection-start-line="255" selection-start-column="7" selection-end-line="255" selection-end-column="7" />
+ <state relative-caret-position="24">
+ <caret line="579" column="25" selection-start-line="579" selection-start-column="25" selection-end-line="579" selection-end-column="25" />
<folding>
<element signature="imports" expanded="true" />
</folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/AlarmWakeUp.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/Initialize.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="133">
- <caret line="12" column="36" selection-start-line="12" selection-start-column="36" selection-end-line="12" selection-end-column="36" />
+ <state relative-caret-position="471">
+ <caret line="72" column="75" lean-forward="true" selection-start-line="72" selection-start-column="75" selection-end-line="72" selection-end-column="75" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/bean/Alarm.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/base/AbstractConnectionService.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="38">
- <caret line="2" column="13" selection-start-line="2" selection-start-column="13" selection-end-line="2" selection-end-column="13" />
+ <state relative-caret-position="57">
+ <caret line="23" column="42" selection-start-line="23" selection-start-column="20" selection-end-line="23" selection-end-column="42" />
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/app/Service.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="190">
- <caret line="20" column="44" selection-start-line="20" selection-start-column="28" selection-end-line="20" selection-end-column="44" />
+ <state relative-caret-position="228">
+ <caret line="581" column="50" selection-start-line="581" selection-start-column="50" selection-end-line="581" selection-end-column="50" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="jar://$USER_HOME$/AppData/Local/Android/Sdk/platforms/android-25/android.jar!/android/content/Context.class">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/SynchronousTime.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="-114">
- <caret line="50" column="28" selection-start-line="50" selection-start-column="28" selection-end-line="50" selection-end-column="28" />
+ <state relative-caret-position="130">
+ <caret line="44" column="3" selection-start-line="44" selection-start-column="3" selection-end-line="46" selection-end-column="48" />
+ <folding>
+ <element signature="imports" expanded="true" />
+ </folding>
</state>
</provider>
</entry>
- <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/service/protocolMainServer.java">
+ <entry file="file://$PROJECT_DIR$/app/src/main/java/com/ic/protocol/utils/NettyConnection.java">
<provider selected="true" editor-type-id="text-editor">
- <state relative-caret-position="3459">
- <caret line="480" column="55" selection-start-line="480" selection-start-column="55" selection-end-line="480" selection-end-column="55" />
+ <state relative-caret-position="205">
+ <caret line="187" column="33" lean-forward="true" selection-start-line="187" selection-start-column="33" selection-end-line="187" selection-end-column="33" />
<folding>
- <element signature="e#7211#8727#0" expanded="true" />
- <element signature="e#8726#8727#0" expanded="true" />
- <element signature="e#28402#28403#0" expanded="true" />
- <element signature="e#28499#28500#0" expanded="true" />
- <element signature="e#29332#29333#0" expanded="true" />
- <element signature="e#29370#29371#0" expanded="true" />
- <element signature="e#32566#32567#0" expanded="true" />
- <element signature="e#32593#32594#0" expanded="true" />
- <element signature="e#35757#35758#0" expanded="true" />
+ <element signature="e#4682#4683#0" expanded="true" />
+ <element signature="e#4771#4772#0" expanded="true" />
</folding>
</state>
</provider>
}\r
\r
private void sendBatteryNotification() {\r
-// if (runtime.getHaveBatteryChange() && !runtime.getBatterychanging() && !this.batteryNotification) {\r
+ if (runtime.getHaveBatteryChange() && !runtime.getBatterychanging() && !this.batteryNotification) {\r
// connection.send(API.H05(runtime, "2"));\r
-// this.batteryNotification = true;\r
-// }\r
-// if (runtime.getBatteryLow() && !runtime.getBatterychanging() && !this.batteryLowNotification) {\r
+ this.batteryNotification = true;\r
+ }\r
+ if (runtime.getBatteryLow() && !runtime.getBatterychanging() && !this.batteryLowNotification) {\r
// connection.send(API.H05(runtime, "1"));\r
-// this.batteryLowNotification = true;\r
-// }\r
-// if (runtime.getBatterychanging()) {\r
-// this.batteryNotification = false;\r
-// this.batteryLowNotification = false;\r
-// }\r
+ this.batteryLowNotification = true;\r
+ }\r
+ if (runtime.getBatterychanging()) {\r
+ this.batteryNotification = false;\r
+ this.batteryLowNotification = false;\r
+ }\r
}\r
\r
private static StringMessage setNewKey(StringMessage paramStringMessage, String paramString) {\r
this.mLbsHelper.setOnWiFiInfoListener(new LBSHelper.OnWiFiInfoListener() {\r
public void getWifiInfoCallBack(String param1String) {\r
// LocationClient.access$002(true);\r
+// LocationClient.this.\r
runtime.currentWifiInfo = param1String;\r
}\r
});\r
\r
@TargetApi(Build.VERSION_CODES.FROYO)\r
public void EqcAlgorithmInterfaceMethod3() {\r
-// if (Deliver.is_active_location) {\r
-// Deliver.is_active_location = false;\r
-// getLocationWakeLock();\r
-// }\r
+ if (Deliver.is_active_location) {\r
+ Deliver.is_active_location = false;\r
+ getLocationWakeLock();\r
+ }\r
Settings.Secure.setLocationProviderEnabled(runtime.getContextProxy().getResolver(), GPS_PROVIDER, false);\r
Single.just(null).observeOn(AndroidSchedulers.mainThread()).subscribe(new Action1<Object>() {\r
public void call(Object param1Object) { LocationClient.this.nmeaListener.stopListen(); }\r
}\r
\r
public void resolveResult(int paramInt1, int paramInt2, int paramInt3, double paramDouble1, double paramDouble2, double paramDouble3, float paramFloat1, float paramFloat2, int paramInt4, float paramFloat3, long paramLong1, long paramLong2, double paramDouble4, double paramDouble5, int paramInt5, long paramLong3, int paramInt6) {\r
-// int i = SharPreferenceUtil.getPrefInt((runtime.getContextProxy()).context, LACATION_CYCLE, 3);\r
-// String str1 = runtime.getLatitude();\r
-// String str2 = runtime.getLongitude();\r
-// paramLong2 = runtime.getTimestamp();\r
-// isLocationCallBack = false;\r
-// if ((paramInt2 & true) == 1) {\r
-// Logger.i("开机定位");\r
-// performExecute(paramInt1, i, 0, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x2) >> 1 == 1) {\r
-// Logger.i("周期定位");\r
-// performExecute(paramInt1, i, 1, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x4) >> 2 == 1) {\r
-// Logger.i("主动定位");\r
-// performExecute(paramInt1, i, 2, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x8) >> 3 == 1) {\r
-// Logger.i("SOS定位");\r
-// performExecute(paramInt1, i, 3, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x10) >> 4 == 1) {\r
-// Logger.i("获取位置信息");\r
-// performExecute(paramInt1, i, 4, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x20) >> 5 == 1) {\r
-// Logger.i("定时定位");\r
-// performExecute(paramInt1, i, 5, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x40) >> 6 == 1) {\r
-// Logger.i("实时定位");\r
-// performExecute(paramInt1, i, 6, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x80) >> 7 == 1) {\r
-// Logger.i("摇一摇");\r
-// Runtime runtime1 = runtime;\r
-// LocationClient locationClient = this;\r
-//// ServiceUtil.offerQueue(API.H15(runtime1, locationClient.mWifiInfo, locationClient.mCellInfo, 7));\r
-// }\r
-// if ((paramInt2 & 0x100) >> 8 == 1) {\r
-// Logger.i("脱落报警");\r
-// performExecute(paramInt1, i, 8, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x200) >> 9 == 1) {\r
-// Logger.i("照相定位");\r
-// performExecute(paramInt1, i, 9, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x400) >> 10 == 1) {\r
-// Logger.i("获取经纬度");\r
-// performExecute(paramInt1, i, 10, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
-// if ((paramInt2 & 0x800) >> 11 == 1) {\r
-// Logger.i("获取天气");\r
-// performExecute(paramInt1, i, 11, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
-// }\r
+ int i = SharPreferenceUtil.getPrefInt((runtime.getContextProxy()).context, LACATION_CYCLE, 3);\r
+ String str1 = runtime.getLatitude();\r
+ String str2 = runtime.getLongitude();\r
+ paramLong2 = runtime.getTimestamp();\r
+ isLocationCallBack = false;\r
+ if ((paramInt2 & 0x1) == 1) {\r
+ Logger.i("开机定位");\r
+ performExecute(paramInt1, i, 0, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x2) >> 1 == 1) {\r
+ Logger.i("周期定位");\r
+ performExecute(paramInt1, i, 1, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x4) >> 2 == 1) {\r
+ Logger.i("主动定位");\r
+ performExecute(paramInt1, i, 2, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x8) >> 3 == 1) {\r
+ Logger.i("SOS定位");\r
+ performExecute(paramInt1, i, 3, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x10) >> 4 == 1) {\r
+ Logger.i("获取位置信息");\r
+ performExecute(paramInt1, i, 4, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x20) >> 5 == 1) {\r
+ Logger.i("定时定位");\r
+ performExecute(paramInt1, i, 5, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x40) >> 6 == 1) {\r
+ Logger.i("实时定位");\r
+ performExecute(paramInt1, i, 6, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x80) >> 7 == 1) {\r
+ Logger.i("摇一摇");\r
+ Runtime runtime1 = runtime;\r
+ LocationClient locationClient = this;\r
+// ServiceUtil.offerQueue(API.H15(runtime1, locationClient.mWifiInfo, locationClient.mCellInfo, 7));\r
+ }\r
+ if ((paramInt2 & 0x100) >> 8 == 1) {\r
+ Logger.i("脱落报警");\r
+ performExecute(paramInt1, i, 8, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x200) >> 9 == 1) {\r
+ Logger.i("照相定位");\r
+ performExecute(paramInt1, i, 9, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x400) >> 10 == 1) {\r
+ Logger.i("获取经纬度");\r
+ performExecute(paramInt1, i, 10, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
+ if ((paramInt2 & 0x800) >> 11 == 1) {\r
+ Logger.i("获取天气");\r
+ performExecute(paramInt1, i, 11, paramInt3, paramDouble1, paramDouble2, paramDouble3, paramFloat1, paramFloat2, paramInt4, paramFloat3, paramLong1, paramLong2, str1, str2, paramInt5, paramLong3, paramInt6);\r
+ }\r
}\r
\r
public void start() {\r
\r
this.lock.lock();\r
// LocationClient.access$1102(false);\r
+ LocationClient.mHasWifiResult=false;\r
try {\r
if (KeepAlive.isConnected) {\r
this.condition.await(30000L, TimeUnit.MILLISECONDS);\r
public class protocolAPIHelper {\r
private static final String TAG = "ICSrv." + protocolAPIHelper.class.getSimpleName();\r
\r
- private static final String CMDHEADER="IW";\r
- private static final String CMDEND="#";\r
- private static final String CMDSPLIT=",";\r
- public enum CMD_TYPE{\r
- AP00,\r
+ private static final String CMDHEADER = "IW";\r
+ private static final String CMDEND = "#";\r
+ private static final String CMDSPLIT = ",";\r
+ private CmdHandler cmdHandler=null;\r
+ public enum CMD_TYPE {\r
+ /*终端发起*/\r
+ AP00,//登录包\r
BP00,\r
- AP01,\r
+ AP01,//混合定位\r
BP01,\r
- AP02,\r
+ AP02,//多基站定位\r
BP02,\r
- AP92,\r
+ AP92,//CDMA 混合定位\r
BP92,\r
- AP03,\r
+ AP03,//心跳包\r
BP03,\r
- AP05,\r
+ AP05,//语音查询接收\r
BP05,\r
- AP07,\r
+ AP07,//语音上行\r
BP07,\r
- AP10,\r
+ AP10,//报警与地址回复\r
BP10,\r
- AP49,\r
+ AP49,//心率上传\r
BP49,\r
- APTM,\r
+ APTM,//基站校时及获取定位\r
BPTM,\r
+ /* 服务器发起*/\r
AP12,\r
- BP12,\r
+ BP12,//SOS 号码设置\r
AP14,\r
- BP14,\r
+ BP14,//设置联系人白名单\r
AP15,\r
- BP15,\r
+ BP15,//设置定位周期\r
AP16,\r
- BP16,\r
+ BP16,//立即定位\r
AP17,\r
- BP17,\r
+ BP17,//恢复出厂设置\r
AP18,\r
- BP18,\r
+ BP18,//重启设备\r
AP21,\r
- BP21,\r
+ BP21,//设置计步开关\r
AP28,\r
- BP28,\r
+ BP28, //语音下行\r
AP31,\r
- BP31,\r
+ BP31,//关机\r
AP33,\r
- BP33,\r
+ BP33,//工作模式\r
APXL,\r
- BPXL,\r
+ BPXL,//测量血压\r
AP84,\r
- BP84,\r
+ BP84,//白名单开关\r
AP85,\r
- BP85,\r
+ BP85,//设置闹钟\r
AP86,\r
- BP86,\r
+ BP86,//心率血压测试周期\r
AP89,\r
- BP89,\r
+ BP89,//心率血压阀值设置\r
UNKNOWN_CMD,\r
}\r
\r
- private static HashMap<CMD_TYPE,String> cmdMap=null;\r
+ private static HashMap<CMD_TYPE, String> cmdMap = null;\r
\r
static {\r
- cmdMap= new HashMap<CMD_TYPE, String>() ;\r
- cmdMap.put(CMD_TYPE.AP00,"AP00");\r
- cmdMap.put(CMD_TYPE.BP00,"BP00");\r
- cmdMap.put(CMD_TYPE.AP01,"AP01");\r
- cmdMap.put(CMD_TYPE.BP01,"BP01");\r
- cmdMap.put(CMD_TYPE.AP02,"AP02");\r
- cmdMap.put(CMD_TYPE.BP02,"BP02");\r
- cmdMap.put(CMD_TYPE.AP92,"AP92");\r
- cmdMap.put(CMD_TYPE.BP92,"BP92");\r
- cmdMap.put(CMD_TYPE.AP03,"AP03");\r
- cmdMap.put(CMD_TYPE.BP03,"BP03");\r
- cmdMap.put(CMD_TYPE.AP05,"AP05");\r
- cmdMap.put(CMD_TYPE.BP05,"BP05");\r
- cmdMap.put(CMD_TYPE.AP07,"AP07");\r
- cmdMap.put(CMD_TYPE.BP07,"BP07");\r
- cmdMap.put(CMD_TYPE.AP10,"AP10");\r
- cmdMap.put(CMD_TYPE.BP10,"BP10");\r
- cmdMap.put(CMD_TYPE.AP49,"AP49");\r
- cmdMap.put(CMD_TYPE.BP49,"BP49");\r
- cmdMap.put(CMD_TYPE.APTM,"APTM");\r
- cmdMap.put(CMD_TYPE.BPTM,"BPTM");\r
- cmdMap.put(CMD_TYPE.AP12,"AP12");\r
- cmdMap.put(CMD_TYPE.BP12,"BP12");\r
- cmdMap.put(CMD_TYPE.AP14,"AP14");\r
- cmdMap.put(CMD_TYPE.BP14,"BP14");\r
- cmdMap.put(CMD_TYPE.AP15,"AP15");\r
- cmdMap.put(CMD_TYPE.BP15,"BP15");\r
- cmdMap.put(CMD_TYPE.AP16,"AP16");\r
- cmdMap.put(CMD_TYPE.BP16,"BP16");\r
- cmdMap.put(CMD_TYPE.AP17,"AP17");\r
- cmdMap.put(CMD_TYPE.BP17,"BP17");\r
- cmdMap.put(CMD_TYPE.AP18,"AP00");\r
- cmdMap.put(CMD_TYPE.BP18,"BP18");\r
- cmdMap.put(CMD_TYPE.AP21,"AP21");\r
- cmdMap.put(CMD_TYPE.BP21,"BP21");\r
- cmdMap.put(CMD_TYPE.AP28,"AP28");\r
- cmdMap.put(CMD_TYPE.BP28,"BP28");\r
- cmdMap.put(CMD_TYPE.AP31,"AP31");\r
- cmdMap.put(CMD_TYPE.BP31,"BP31");\r
- cmdMap.put(CMD_TYPE.AP33,"AP33");\r
- cmdMap.put(CMD_TYPE.BP33,"BP33");\r
- cmdMap.put(CMD_TYPE.APXL,"APXL");\r
- cmdMap.put(CMD_TYPE.BPXL,"BPXL");\r
- cmdMap.put(CMD_TYPE.AP84,"AP84");\r
- cmdMap.put(CMD_TYPE.BP84,"BP84");\r
- cmdMap.put(CMD_TYPE.AP85,"AP85");\r
- cmdMap.put(CMD_TYPE.BP85,"BP85");\r
- cmdMap.put(CMD_TYPE.AP86,"AP86");\r
- cmdMap.put(CMD_TYPE.BP86,"BP86");\r
- cmdMap.put(CMD_TYPE.AP89,"AP89");\r
- cmdMap.put(CMD_TYPE.BP89,"BP89");\r
+ cmdMap = new HashMap<CMD_TYPE, String>();\r
+ cmdMap.put(CMD_TYPE.AP00, "AP00");\r
+ cmdMap.put(CMD_TYPE.BP00, "BP00");\r
+ cmdMap.put(CMD_TYPE.AP01, "AP01");\r
+ cmdMap.put(CMD_TYPE.BP01, "BP01");\r
+ cmdMap.put(CMD_TYPE.AP02, "AP02");\r
+ cmdMap.put(CMD_TYPE.BP02, "BP02");\r
+ cmdMap.put(CMD_TYPE.AP92, "AP92");\r
+ cmdMap.put(CMD_TYPE.BP92, "BP92");\r
+ cmdMap.put(CMD_TYPE.AP03, "AP03");\r
+ cmdMap.put(CMD_TYPE.BP03, "BP03");\r
+ cmdMap.put(CMD_TYPE.AP05, "AP05");\r
+ cmdMap.put(CMD_TYPE.BP05, "BP05");\r
+ cmdMap.put(CMD_TYPE.AP07, "AP07");\r
+ cmdMap.put(CMD_TYPE.BP07, "BP07");\r
+ cmdMap.put(CMD_TYPE.AP10, "AP10");\r
+ cmdMap.put(CMD_TYPE.BP10, "BP10");\r
+ cmdMap.put(CMD_TYPE.AP49, "AP49");\r
+ cmdMap.put(CMD_TYPE.BP49, "BP49");\r
+ cmdMap.put(CMD_TYPE.APTM, "APTM");\r
+ cmdMap.put(CMD_TYPE.BPTM, "BPTM");\r
+ cmdMap.put(CMD_TYPE.AP12, "AP12");\r
+ cmdMap.put(CMD_TYPE.BP12, "BP12");\r
+ cmdMap.put(CMD_TYPE.AP14, "AP14");\r
+ cmdMap.put(CMD_TYPE.BP14, "BP14");\r
+ cmdMap.put(CMD_TYPE.AP15, "AP15");\r
+ cmdMap.put(CMD_TYPE.BP15, "BP15");\r
+ cmdMap.put(CMD_TYPE.AP16, "AP16");\r
+ cmdMap.put(CMD_TYPE.BP16, "BP16");\r
+ cmdMap.put(CMD_TYPE.AP17, "AP17");\r
+ cmdMap.put(CMD_TYPE.BP17, "BP17");\r
+ cmdMap.put(CMD_TYPE.AP18, "AP00");\r
+ cmdMap.put(CMD_TYPE.BP18, "BP18");\r
+ cmdMap.put(CMD_TYPE.AP21, "AP21");\r
+ cmdMap.put(CMD_TYPE.BP21, "BP21");\r
+ cmdMap.put(CMD_TYPE.AP28, "AP28");\r
+ cmdMap.put(CMD_TYPE.BP28, "BP28");\r
+ cmdMap.put(CMD_TYPE.AP31, "AP31");\r
+ cmdMap.put(CMD_TYPE.BP31, "BP31");\r
+ cmdMap.put(CMD_TYPE.AP33, "AP33");\r
+ cmdMap.put(CMD_TYPE.BP33, "BP33");\r
+ cmdMap.put(CMD_TYPE.APXL, "APXL");\r
+ cmdMap.put(CMD_TYPE.BPXL, "BPXL");\r
+ cmdMap.put(CMD_TYPE.AP84, "AP84");\r
+ cmdMap.put(CMD_TYPE.BP84, "BP84");\r
+ cmdMap.put(CMD_TYPE.AP85, "AP85");\r
+ cmdMap.put(CMD_TYPE.BP85, "BP85");\r
+ cmdMap.put(CMD_TYPE.AP86, "AP86");\r
+ cmdMap.put(CMD_TYPE.BP86, "BP86");\r
+ cmdMap.put(CMD_TYPE.AP89, "AP89");\r
+ cmdMap.put(CMD_TYPE.BP89, "BP89");\r
}\r
- public protocolAPIHelper(){\r
-\r
\r
+ public protocolAPIHelper(CmdHandler handler) {\r
\r
+ cmdHandler=handler;\r
}\r
\r
- private StringBuffer cmdbuf=new StringBuffer();\r
+ private StringBuffer cmdbuf = new StringBuffer();\r
+\r
/*\r
输入的字符串,如果有完整命令,返回 true\r
否则返回 false\r
*/\r
- public boolean isCmdStr(String msg){\r
- int head_index=msg.indexOf(CMDHEADER);\r
- if (head_index>=0){\r
- int end_index=msg.indexOf("#",head_index);\r
- if (end_index>=0)\r
- {\r
+ public boolean isCmdStr(String msg) {\r
+ int head_index = msg.indexOf(CMDHEADER);\r
+ if (head_index >= 0) {\r
+ int end_index = msg.indexOf("#", head_index);\r
+ if (end_index >= 0) {\r
return true;\r
}\r
}\r
return false;\r
}\r
+\r
private void log(String msg) {\r
- Logger.log(TAG,msg);\r
+ Logger.log(TAG, msg);\r
}\r
\r
- private void log(String function,String msg) {\r
- Logger.log(TAG,function,msg);\r
+ private void log(String function, String msg) {\r
+ Logger.log(TAG, function, msg);\r
}\r
+\r
/*\r
返回true 表示 cmd 全部解析成功\r
返回false表示 cmd至少有一条解析失败,失败的数据归入buffer,下一次识别接着使用\r
字符串通过#号进行识别。\r
每个字符串如果发现 #,却又没有Header,“IW”则会被丢弃\r
*/\r
- public boolean parserCmd(String cmd_msgbuf){\r
- boolean iscmdComplete=false;\r
- boolean ret=true;\r
- String last_inCompletecmd="";\r
+ public boolean parserCmd(String cmd_msgbuf) {\r
+ boolean iscmdComplete = false;\r
+ boolean ret = true;\r
+ String last_inCompletecmd = "";\r
cmdbuf.append(cmd_msgbuf);\r
/*\r
如果不是 #结尾,就认为 接收数据不全,置位。\r
*/\r
- if (cmdbuf.toString().endsWith(CMDEND)){\r
- iscmdComplete=true;\r
+ if (cmdbuf.toString().endsWith(CMDEND)) {\r
+ iscmdComplete = true;\r
}\r
- String [] cmdlist = cmd_msgbuf.split(CMDEND);\r
- int listlen=cmdlist.length;\r
+ String[] cmdlist = cmd_msgbuf.split(CMDEND);\r
+ int listlen = cmdlist.length;\r
/*\r
如果解析出来的cmdlist不是空,且数据不是完整cmd则保留 最后一条数据到last_inCompletecmd\r
*/\r
- if (cmdlist.length>0 && iscmdComplete==false){\r
- listlen -=1;\r
+ if (cmdlist.length > 0 && iscmdComplete == false) {\r
+ listlen -= 1;\r
last_inCompletecmd = cmdlist[listlen];\r
- log("cmd not complete , "+last_inCompletecmd);\r
+ log("cmd not complete , " + last_inCompletecmd);\r
}\r
- for (int i = 0; i< listlen ; i++){\r
- for(CMD_TYPE key: cmdMap.keySet()){\r
- if ( cmdlist[i].startsWith(CMDHEADER+cmdMap.get(key))){\r
- log("found cmd keyid=" + key+" ,keyname="+cmdMap.get(key)+" , "+cmdlist[i]);\r
- if(key == CMD_TYPE.BP28){\r
- //如果是BP28则 后面的数据是音频,需要保留\r
- if ((i+1)<cmdlist.length) {\r
- //如果i+1 cmdlist确实在数组范围内,则可以进行数据处理\r
- handleCmd(key, cmdlist[i] + "#" + cmdlist[i + 1]);\r
- i++;\r
- }\r
+ for (int i = 0; i < listlen; i++) {\r
+ for (CMD_TYPE key : cmdMap.keySet()) {\r
+ if (cmdlist[i].startsWith(CMDHEADER + cmdMap.get(key))) {\r
+ log("found cmd keyid=" + key + " ,keyname=" + cmdMap.get(key) + " , " + cmdlist[i]);\r
+ if (key == CMD_TYPE.BP28) {\r
+ //如果是BP28则 后面的数据是音频,需要保留\r
+ if ((i + 1) < cmdlist.length) {\r
+ //如果i+1 cmdlist确实在数组范围内,则可以进行数据处理\r
+ if (cmdHandler!=null) cmdHandler.handleCmd(key, cmdlist[i] + "#" + cmdlist[i + 1]);\r
+ i++;\r
+ }\r
\r
- }else{\r
- handleCmd(key,cmdlist[i]);\r
+ } else {\r
+ if (cmdHandler!=null) cmdHandler.handleCmd(key, cmdlist[i]);\r
+ }\r
}\r
- }\r
}\r
}\r
\r
- cmdbuf=new StringBuffer().append(last_inCompletecmd);\r
+ cmdbuf = new StringBuffer().append(last_inCompletecmd);\r
return ret;\r
}\r
\r
/*登录*/\r
- public static String AP00(Runtime ds){\r
+ public static String AP00(Runtime ds) {\r
//示例数据:IWAP00867155030001063#\r
return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP00)).append(ds.IMEI()).append(CMDEND).toString();\r
}\r
- public static String AP03(Runtime ds){\r
+\r
+ public static String AP03(Runtime ds) {\r
//示例数据:IWAP03,06000908000102,5555,30#\r
return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP03)).append(CMDSPLIT).append(ds.getSignalStrength())\r
.append(ds.getGPSLocationStarNums()).append(ds.getBattery()).append("0")\r
.append(ds.getTotalStepCount()).append(CMDSPLIT).append(0/*rolltime*/).append(CMDEND).toString();\r
}\r
\r
- public static String AP01(Runtime ds){\r
+ public static String AP01(Runtime ds) {\r
//示例数据:IWAP01080524A2232.9806N11404.9355E000.1061830323.8706000908000102,\r
// 460,0,9520,3671,\r
// Home|74-DE-2B-44-88-8C|97& Home1|74-DE-2B-44-88-8C|97&Home2|74-DE-2B-44-88-8C|97& Home3|74-DE-2B-44-88-8C|97#\r
.append(ds.getProtection()).append(ds.getWorkMode()).append(CMDSPLIT)\r
.append(ds.getLBSData()).append(CMDSPLIT).append(ds.getWifiInfo()).append(CMDEND).toString();\r
}\r
- public static String AP28(String name,String msg,int packagecount,int currentpackageindex,int received_success){\r
+\r
+ public static String AP28(String name, String msg, int packagecount, int currentpackageindex, int received_success) {\r
//示例数据:IWAP28,D3590D54,xxxx,6,1,1#\r
return new StringBuffer(CMDHEADER).append(cmdMap.get(CMD_TYPE.AP28))\r
.append(CMDSPLIT).append(name)\r
.append(CMDEND).toString();\r
}\r
\r
- private boolean handleCmd(CMD_TYPE type,String cmd)\r
+ public interface CmdHandler\r
{\r
- boolean ret=true;\r
-\r
- switch (type){\r
- case BP00:\r
- handleBP00(cmd);\r
- break;\r
- case BP01:\r
- handleBP01(cmd);\r
- break;\r
- case BP03:\r
- handleBP03(cmd);\r
- break;\r
- case BP28:\r
- handleBP28(cmd);\r
- break;\r
-\r
- }\r
\r
+ boolean handleCmd(CMD_TYPE type, String cmd);\r
\r
- return ret;\r
}\r
\r
//处理 登录 BP00\r
private String haveTry;\r
\r
private String host = "watch.jiai.pro";\r
- \r
+\r
+ private String srvIP = "39.98.94.164";\r
+\r
private String imei = "867155030001063";\r
\r
private String imei_cid = "";\r
\r
private String mccAndMnc;\r
\r
- private int port = 8090;\r
+ private int port = 20048;//8888;//8090;\r
\r
public String preCdmaInfo;\r
\r
\r
private boolean shutdown;\r
\r
- private boolean testServerProp;\r
+ private boolean testServerProp=true;\r
\r
private long timestamp;\r
\r
\r
public String getHaveTry() { return this.haveTry; }\r
\r
- public String getHost() { return this.testServerProp ? "121.42.192.174" : this.host; }\r
+ public String getHost() { return this.testServerProp ? srvIP : this.host; }\r
\r
public String getKey() { return this.key; }\r
\r
HEARTRATE_TEST_FAILED,\r
} ;\r
\r
- public boolean isHeartr8ateExists(){\r
+ public boolean isHeartrRateExists(){\r
return true;\r
}\r
\r
import com.ic.protocol.service.base.AbstractConnectionService;\r
import com.ic.protocol.utils.Connection;\r
\r
+import static android.telephony.TelephonyManager.SIM_STATE_ABSENT;\r
+import static android.telephony.TelephonyManager.SIM_STATE_READY;\r
+import static android.telephony.TelephonyManager.SIM_STATE_UNKNOWN;\r
+\r
public class CheckSIM extends AbstractConnectionService {\r
private static final String ACTION_SIM_STATE_CHANGED = "android.intent.action.SIM_STATE_CHANGED";\r
\r
int[] simState = { 0, 0, 0, 0 };\r
\r
private boolean hasSimCard() {\r
- int i = ((TelephonyManager)(this.mRuntime.getContextProxy()).context.getSystemService(Context.TELEPHONY_SERVICE)).getSimState();\r
- boolean bool = false;\r
- switch (i) {\r
- default:\r
- bool = true;\r
- break;\r
- case 0:\r
- case 1:\r
- break;\r
- } \r
- return bool;\r
+// int i = ((TelephonyManager)(this.mRuntime.getContextProxy()).context.getSystemService(Context.TELEPHONY_SERVICE)).getSimState();\r
+// boolean bool = false;\r
+// switch (i) {\r
+// default:\r
+// bool = true;\r
+// break;\r
+// case SIM_STATE_ABSENT:\r
+// case SIM_STATE_UNKNOWN:\r
+// break;\r
+// }\r
+// return bool;\r
+ return (((TelephonyManager)(this.mRuntime.getContextProxy()).context.getSystemService(Context.TELEPHONY_SERVICE)).getSimState() == SIM_STATE_READY);\r
}\r
@Override\r
public void onAlarmClock(Connection paramConnection, Runtime paramRuntime) {\r
String[] arrayOfString1;\r
this.mConnection = paramConnection;\r
this.mRuntime = paramRuntime;\r
- String str5 = paramStringMessage.cmd();\r
- if (str5.startsWith("SmsSet")) {\r
- arrayOfString4 = str5.split(":");\r
+ String cmd = paramStringMessage.cmd();\r
+ if (cmd.startsWith("SmsSet")) {\r
+ arrayOfString4 = cmd.split(":");\r
if (arrayOfString4.length > 1) {\r
// paramConnection.send(API.H13(paramRuntime, arrayOfString4[1]));\r
if ("1".equals(arrayOfString4[1])) {\r
} \r
return true;\r
} \r
- if (str5.equals("PUSH")) {\r
+ if (cmd.equals("PUSH")) {\r
stringBuilder2 = new StringBuilder();\r
stringBuilder2.append("response=");\r
// stringBuilder2.append(arrayOfString4.toString());\r
// });\r
return true;\r
} \r
- switch (str5.hashCode()) {\r
+ switch (cmd.hashCode()) {\r
default:\r
i = -1;\r
break;\r
case 2010452830:\r
- if (str5.equals("NewPicture")) {\r
+ if (cmd.equals("NewPicture")) {\r
i = 5;\r
break;\r
} \r
case 1965687765:\r
- if (str5.equals("Location")) {\r
+ if (cmd.equals("Location")) {\r
i = 9;\r
break;\r
} \r
case 1474607358:\r
- if (str5.equals("Check_bill")) {\r
+ if (cmd.equals("Check_bill")) {\r
i = 3;\r
break;\r
} \r
case 1433513874:\r
- if (str5.equals("NewVoice")) {\r
+ if (cmd.equals("NewVoice")) {\r
i = 4;\r
break;\r
} \r
case 750870555:\r
- if (str5.equals("RemoteWifiRate")) {\r
+ if (cmd.equals("RemoteWifiRate")) {\r
i = 11;\r
break;\r
} \r
case 613936256:\r
- if (str5.equals("RemoteHeartRate")) {\r
+ if (cmd.equals("RemoteHeartRate")) {\r
i = 10;\r
break;\r
} \r
case 411981707:\r
- if (str5.equals("Videojufenglogin")) {\r
+ if (cmd.equals("Videojufenglogin")) {\r
i = 8;\r
break;\r
} \r
case -355520725:\r
- if (str5.equals("RemoteCamera")) {\r
+ if (cmd.equals("RemoteCamera")) {\r
i = 2;\r
break;\r
} \r
case -811859232:\r
- if (str5.equals("GetVideoId")) {\r
+ if (cmd.equals("GetVideoId")) {\r
i = 7;\r
break;\r
} \r
case -1391156271:\r
- if (str5.equals("RemoteSetWifiRate")) {\r
+ if (cmd.equals("RemoteSetWifiRate")) {\r
i = 12;\r
break;\r
} \r
case -1393994438:\r
- if (str5.equals("Monitor")) {\r
+ if (cmd.equals("Monitor")) {\r
i = 1;\r
break;\r
} \r
case -1754979095:\r
- if (str5.equals("Update")) {\r
+ if (cmd.equals("Update")) {\r
i = 0;\r
break;\r
} \r
case -1882613593:\r
- if (str5.equals("OssFileDowload")) {\r
+ if (cmd.equals("OssFileDowload")) {\r
i = 13;\r
break;\r
} \r
case -1893234925:\r
- if (str5.equals("UrlDownloadPic")) {\r
+ if (cmd.equals("UrlDownloadPic")) {\r
i = 6;\r
break;\r
} \r
--- /dev/null
+package com.ic.protocol.service;\r
+\r
+import android.database.Cursor;\r
+\r
+import com.ic.protocol.Config;\r
+import com.ic.protocol.ICContentProvider;\r
+import com.ic.protocol.adapter.protocolAPIHelper;\r
+import com.ic.protocol.bean.StringMessage;\r
+import com.ic.protocol.service.base.AbstractConnectionService;\r
+import com.ic.protocol.utils.Connection;\r
+import com.ic.protocol.bean.Runtime;\r
+import com.ic.protocol.utils.DeviceInfoUtil;\r
+import com.ic.protocol.utils.Logger;\r
+import com.ic.protocol.utils.SharPreferenceUtil;\r
+import com.ic.protocol.utils.SimSignalUtil;\r
+\r
+import org.json.JSONObject;\r
+import org.json.JSONTokener;\r
+\r
+public class Initialize extends AbstractConnectionService {\r
+ private boolean hasChange = false;\r
+ \r
+ private SimSignalUtil mInstance;\r
+ \r
+ private int netWorkFlag;\r
+ private boolean initOK=false;\r
+ private int weatherOutTime = 30;\r
+ \r
+ public static boolean hasContacts(Runtime paramRuntime) {\r
+ Cursor cursor = (paramRuntime.getContextProxy()).context.getContentResolver().query(ICContentProvider.CONTACT_URI, null, null, null, null);\r
+ if (cursor != null) {\r
+ if (cursor.moveToNext()) {\r
+ cursor.close();\r
+ return true;\r
+ } \r
+ cursor.close();\r
+ } \r
+ return false;\r
+ }\r
+ \r
+ public void onAlarmClock(Connection paramConnection, Runtime paramRuntime) {\r
+ if (this.netWorkFlag > 5 && !this.hasChange) {\r
+ this.hasChange = true;\r
+ this.netWorkFlag = 0;\r
+ } else {\r
+ this.netWorkFlag++;\r
+ } \r
+// if (paramRuntime.getVideoID() == null)\r
+// paramConnection.send(API.H139(paramRuntime));\r
+ }\r
+ \r
+ public void onAttach(Connection paramConnection, Runtime paramRuntime) { this.mInstance = SimSignalUtil.getInstance((paramRuntime.getContextProxy()).context); }\r
+ \r
+ public boolean onConnectionClose(Connection paramConnection, Runtime paramRuntime) { return this.initOK ^ true; }\r
+ \r
+ public boolean onConnectionOpen(Connection paramConnection, Runtime paramRuntime) {\r
+ if (this.initOK)\r
+ return false; \r
+ if (paramRuntime.IMSI() != null && !paramRuntime.IMSI().startsWith("46001"))\r
+ paramRuntime.IMSI().startsWith("46006"); \r
+ int i = SharPreferenceUtil.getPrefInt((paramRuntime.getContextProxy()).context, "lacation_mode", 2);\r
+ int j = SharPreferenceUtil.getPrefInt((paramRuntime.getContextProxy()).context, "lacation_cycle", 3);\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append(i);\r
+ stringBuilder.append("@");\r
+ stringBuilder.append(j);\r
+ Config.work_mode = stringBuilder.toString();\r
+ stringBuilder = new StringBuilder();\r
+ stringBuilder.append(" antioff =");\r
+ stringBuilder.append(Config.antioff);\r
+ Logger.i(stringBuilder.toString());\r
+ Config.sw_release_no = DeviceInfoUtil.getCustomId();\r
+ StringMessage stringMessage=new StringMessage(new String[]{protocolAPIHelper.AP00(paramRuntime)});\r
+ paramConnection.send(stringMessage);\r
+ return true;\r
+ }\r
+ \r
+ public void onDetach(Connection paramConnection, Runtime paramRuntime) { this.initOK = false; }\r
+ \r
+ public boolean onReceive(StringMessage paramStringMessage, Connection paramConnection, Runtime paramRuntime) {\r
+ if (this.initOK)\r
+ return false; \r
+ if (paramStringMessage.cmd().equals("Init")) {\r
+ this.initOK = true;\r
+// try {\r
+// paramRuntime.setKey(((JSONObject)(new JSONTokener(paramStringMessage.all()[1])).nextValue()).getString("KEY"));\r
+// } catch (Exception e) {\r
+// e.printStackTrace();\r
+// }\r
+ if (!hasContacts(paramRuntime)) {\r
+// paramConnection.send(API.H06(paramRuntime));\r
+ Logger.i("没有联系人");\r
+ } else {\r
+ Logger.i("有联系人");\r
+ } \r
+// EqcAlgorithmNative.native_EqcAlgorithmMethod3(1);\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append("imei_cid_key =");\r
+ stringBuilder.append(paramRuntime.IMEI_CID_KEY());\r
+ Logger.i(stringBuilder.toString());\r
+// paramConnection.send(API.H139(paramRuntime));\r
+ this.nextService.processConnectionOpen(paramConnection, paramRuntime);\r
+ } \r
+ return true;\r
+ }\r
+}\r
+\r
+\r
import android.content.Intent;\r
import android.content.IntentFilter;\r
import android.os.SystemClock;\r
+import android.util.Log;\r
\r
import com.eiot.watch_lib.LauncherCtrl;\r
import com.ic.protocol.adapter.protocolAPIHelper;\r
\r
public class KeepAlive extends AbstractConnectionService {\r
private static final long HEARTBEAT_TIMEOUT = 660000L;\r
- \r
+ private static String TAG = KeepAlive.class.getSimpleName();\r
public static boolean connectionError = false;\r
\r
public static boolean isConnected = false;\r
\r
public boolean onReceive(StringMessage paramStringMessage, Connection paramConnection, Runtime paramRuntime) {\r
this.idleTimeMillis = SystemClock.elapsedRealtime();\r
+ Log.i(TAG,paramStringMessage.cmd());\r
if ("heart".equals(paramStringMessage.cmd()) || "Link:OK".equals(paramStringMessage.cmd()) || "Shutdown:OK".equals(paramStringMessage.cmd()) || "Sport:OK".equals(paramStringMessage.cmd())) {\r
if ("Shutdown:OK".equals(paramStringMessage.cmd()))\r
paramRuntime.getContextProxy().shutdown(); \r
public void onReceive(Context param1Context, Intent param1Intent) {\r
boolean bool = param1Intent.getBooleanExtra("reboot", false);\r
if (KeepAlive.this.mRuntime.getBatteryLow() && !KeepAlive.this.mRuntime.getBatterychanging() && !bool && !KeepAlive.this.mRuntime.isShutdown()){\r
- // KeepAlive.this.connection.send(API.H11(KeepAlive.this.mRuntime, "3"));\r
+// KeepAlive.this.connection.send(new StringMessage(protocolAPIHelper.AP00(KeepAlive.this.mRuntime)));\r
}\r
\r
}\r
--- /dev/null
+package com.ic.protocol.service;\r
+\r
+import android.os.SystemClock;\r
+\r
+import com.ic.protocol.adapter.protocolAPIHelper;\r
+import com.ic.protocol.bean.Runtime;\r
+import com.ic.protocol.bean.StringMessage;\r
+import com.ic.protocol.service.base.AbstractConnectionService;\r
+import com.ic.protocol.utils.Connection;\r
+import com.ic.protocol.utils.Logger;\r
+import com.ic.protocol.utils.NettyConnection;\r
+import com.ic.protocol.utils.TimeUtil;\r
+import com.ic.protocol.bean.Runtime;\r
+\r
+import java.text.ParseException;\r
+import java.text.SimpleDateFormat;\r
+import java.util.TimeZone;\r
+\r
+public class SynchronousTime extends AbstractConnectionService {\r
+ private boolean synchronousTimeOK = false;\r
+ \r
+ private void getCoder() {\r
+// if (CoderFactory.getCoderFactoryInstance().getCoder() != null)\r
+// Logger.i("成功获取");\r
+ }\r
+ \r
+ private void setDateAndTime(long paramLong) {\r
+ SystemClock.setCurrentTimeMillis(paramLong);\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append("设置时间");\r
+ stringBuilder.append(TimeUtil.getSystemTime());\r
+ Logger.i(stringBuilder.toString());\r
+ }\r
+ \r
+ public void onAlarmClock(Connection paramConnection, Runtime paramRuntime) {}\r
+ \r
+ public void onAttach(Connection paramConnection, Runtime paramRuntime) {}\r
+ \r
+ public boolean onConnectionClose(Connection paramConnection, Runtime paramRuntime) { return this.synchronousTimeOK ^ true; }\r
+\r
+ @Override\r
+ public boolean onConnectionOpen(Connection paramConnection, Runtime paramRuntime) {\r
+ if (this.synchronousTimeOK)\r
+ return false; \r
+ StringMessage stringMessage = new StringMessage( protocolAPIHelper.AP00(paramRuntime));\r
+// byte[] arrayOfByte = (new StringMessageSocketEngine(paramRuntime.getHost(), paramRuntime.getPort() - 2)).request(stringMessage);\r
+ paramConnection.sendBlocking(stringMessage);\r
+// if (arrayOfByte != null) {\r
+// this.synchronousTimeOK = true;\r
+// str = new String(arrayOfByte);\r
+// StringBuilder stringBuilder = new StringBuilder();\r
+// stringBuilder.append("成功返回");\r
+// stringBuilder.append(str);\r
+// Logger.i(stringBuilder.toString());\r
+// str = str.substring(5);\r
+// str = str.substring(0, str.length() - 1);\r
+// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd,HH:mm:ss");\r
+// simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT+08:00"));\r
+// try {\r
+// long l1 = simpleDateFormat.parse(str).getTime();\r
+// long l2 = System.currentTimeMillis();\r
+// StringBuilder stringBuilder1 = new StringBuilder();\r
+// stringBuilder1.append("serviceTime=");\r
+// stringBuilder1.append(l1);\r
+// stringBuilder1.append("---localTime=");\r
+// stringBuilder1.append(l2);\r
+// Logger.i(stringBuilder1.toString());\r
+// if (Math.abs(l1 - l2) > 60000L) {\r
+// setDateAndTime(l1);\r
+// return false;\r
+// }\r
+// } catch (ParseException str) {\r
+// str.printStackTrace();\r
+// }\r
+// return false;\r
+// }\r
+ return true;\r
+ }\r
+ \r
+ public void onDetach(Connection paramConnection, Runtime paramRuntime) {}\r
+ \r
+ public boolean onReceive(StringMessage paramStringMessage, Connection paramConnection, Runtime paramRuntime) { return !this.synchronousTimeOK; }\r
+\r
+\r
+\r
+}\r
+\r
import android.os.Messenger;\r
import android.os.PowerManager;\r
import android.os.SystemClock;\r
+import android.util.Log;\r
import android.widget.Toast;\r
\r
+import com.ic.protocol.Constants;\r
import com.ic.protocol.LocationClient;\r
import com.ic.protocol.adapter.LBSHelper;\r
import com.ic.protocol.adapter.protocolAPIHelper;\r
\r
import static android.app.PendingIntent.FLAG_UPDATE_CURRENT;\r
import static com.ic.protocol.Constants.ACTION_EQC_ALARM;\r
+import static com.ic.protocol.Constants.HEART_ALARM;\r
+import static com.ic.protocol.Constants.SLEEP_ALARM;\r
+import static com.ic.protocol.Constants.WAKE_ALARM;\r
+import static com.ic.protocol.Constants.WEATHER_ALARM;\r
\r
public class protocolMainServer extends Service {\r
\r
\r
LocationClient locationClient;\r
\r
-// private Deliver mDeliver;\r
+ private Deliver mDeliver;\r
\r
private boolean mHaveSetWeatherAlarm;\r
\r
if (is_in_sleep_mode) {\r
// CoreService.access$402(false);\r
// CoreService.access$502(0);\r
+ /*屏幕亮起时,如果在sleep模式,则唤醒各个进程*/\r
protocolMainServer.is_in_sleep_mode=false;\r
protocolMainServer.is_allowed_in_sleep_mode=0;\r
if (protocolMainServer.this.mKeepAlive != null)\r
}\r
if (is_wifi_network_ok) {\r
// CoreService.access$302(false);\r
+ /*屏幕亮起时,如果wifi开启,则开启wifi*/\r
protocolMainServer.is_in_sleep_mode=false;\r
Util.turnOnWifiForConnect((protocolMainServer.this.runtime.getContextProxy()).context, protocolMainServer.this.runtime);\r
- return;\r
}\r
} else if ("android.intent.action.SCREEN_OFF".equals(param1Intent.getAction()) && Util.isWifiIsOpen((protocolMainServer.this.runtime.getContextProxy()).context, protocolMainServer.this.runtime)) {\r
// CoreService.access$302(true);\r
\r
private AbstractConnectionService getConnectionServiceChain() {\r
// DNS dNS = new DNS();\r
-// SynchronousTime synchronousTime = new SynchronousTime();\r
+ SynchronousTime synchronousTime = new SynchronousTime();\r
// new ProcessEncryptionService();\r
-// Initialize initialize = new Initialize();\r
-// CheckSIM checkSIM = new CheckSIM();\r
+ Initialize initialize = new Initialize();\r
+ CheckSIM checkSIM = new CheckSIM();\r
this.mKeepAlive = new KeepAlive();\r
-// this.mDeliver = new Deliver();\r
+ this.mDeliver = new Deliver();\r
// dNS.setNext(synchronousTime);\r
-// synchronousTime.setNext(initialize);\r
-// initialize.setNext(checkSIM);\r
-// checkSIM.setNext(this.mKeepAlive);\r
-// this.mKeepAlive.setNext(this.mDeliver);\r
- return mKeepAlive;\r
+ synchronousTime.setNext(initialize);\r
+ initialize.setNext(checkSIM);\r
+ checkSIM.setNext(this.mKeepAlive);\r
+ this.mKeepAlive.setNext(this.mDeliver);\r
+\r
+ return synchronousTime;\r
}\r
\r
private void getDBFile() {\r
AlarmHelper.setCleanStepCountAlarm(this, 23, 59, "com.enqualcomm.support.ACTION_STEP_COUNT_ALARM");\r
}\r
\r
- private void setSleepAlarm() {}\r
+ private void setSleepAlarm() {\r
+ /*每5分左右 休眠*/\r
+ AlarmHelper.setTimeAlarm(this, 0, 5, SLEEP_ALARM);\r
+ }\r
\r
- private void setWakeAlarm() {}\r
+ private void setWakeAlarm() {\r
+\r
+ /*每1 左右 唤醒自己*/\r
+ AlarmHelper.setTimeAlarm(this, 0, 1, WAKE_ALARM);\r
+ }\r
\r
private void setWeatherAlarm() {\r
/*每6小时20分左右 更新一次 weather*/\r
- AlarmHelper.setTimeAlarm(this, 6, (new Random()).nextInt(40) + 20, "com.enqualcomm.support.ACTION_WEATHER_ALARM");\r
+ AlarmHelper.setTimeAlarm(this, 6, (new Random()).nextInt(40) + 20, WEATHER_ALARM);\r
}\r
\r
private void wakeUpFromSleep() {\r
stringBuilder.append(" paramInt2=");\r
stringBuilder.append(paramInt2);\r
Logger.i(stringBuilder.toString());\r
- if ("com.enqualcomm.support.ACTION_ALARM".equals(paramIntent.getAction())) {\r
+ if (ACTION_ALARM.equals(paramIntent.getAction())) {\r
if (cmcm_call_eiot_into_powersave_mode() == 1) {\r
Logger.i("2 into powersave return");\r
return Service.START_NOT_STICKY;\r
alarmCycle = SharPreferenceUtil.getPrefInt((this.runtime.getContextProxy()).context, "lacation_cycle", 3);\r
}\r
AlarmWakeUp.setAlarmWakeUpTime();\r
- boolean bool = ((PowerManager)getSystemService(POWER_SERVICE)).isScreenOn();\r
- if (!bool)\r
+ boolean screenon = ((PowerManager)getSystemService(POWER_SERVICE)).isScreenOn();\r
+ if (!screenon)\r
send_at_to_update_lbs();\r
- if (Util.isConnectWifi((this.runtime.getContextProxy()).context) && !bool) {\r
+ if (Util.isConnectWifi((this.runtime.getContextProxy()).context) && !screenon) {\r
is_wifi_network_ok = true;\r
Util.turnOffWifiForSleep((this.runtime.getContextProxy()).context, this.runtime);\r
}\r
setAlarm(alarmCycle);\r
- this.runtime.getContextProxy().sendBroadcast("com.enqualcomm.support.ACTION_EQC_ALARM", this.runtime);\r
+\r
+ //发送心跳间隔广播给其他应用\r
+ this.runtime.getContextProxy().sendBroadcast(ACTION_EQC_ALARM, this.runtime);\r
this.locationClient.onAlarm(getWakeLock(alarmCycle));\r
this.connectionServiceChain.processAlarmClock(this.connection, this.runtime);\r
this.invokeHandlerServiceChain.processAlarmClock(this.connection, this.runtime);\r
}\r
} else {\r
StringBuilder stringBuilder1;\r
- if ("com.enqualcomm.support.SLEEP_ALARM".equals(paramIntent.getAction())) {\r
+ if (Constants.SLEEP_ALARM.equals(paramIntent.getAction())) {\r
Logger.i("SLEEP_ALARM");\r
is_allowed_in_sleep_mode = 1;\r
FileOutputUtil.fileOutput(this, "alarmCycle", "SLEEP_ALARM alarmCycle");\r
return Service.START_STICKY;\r
}\r
} else {\r
- if ("com.enqualcomm.support.WAKE_ALARM".equals(paramIntent.getAction())) {\r
+ if (Constants.WAKE_ALARM.equals(paramIntent.getAction())) {\r
if (is_in_sleep_mode) {\r
is_in_sleep_mode = false;\r
FileOutputUtil.fileOutput(this, "alarmCycle", "WAKE_ALARM alarmCycle");\r
setWakeAlarm();\r
return Service.START_STICKY;\r
}\r
- if ("com.enqualcomm.support.HEART_ALARM".equals(paramIntent.getAction())) {\r
+ if (HEART_ALARM.equals(paramIntent.getAction())) {\r
if (this.mKeepAlive != null) {\r
this.mKeepAlive.onHeartAlarm(this.connection, this.runtime);\r
return Service.START_STICKY;\r
}\r
} else {\r
- if ("com.enqualcomm.support.ACTION_WEATHER_ALARM".equals(paramIntent.getAction())) {\r
+ if (WEATHER_ALARM.equals(paramIntent.getAction())) {\r
// this.mSendPairMessage.resetDownLoadConfig();\r
// this.mSendPairMessage.startDownLoad(this.runtime, false);\r
return Service.START_STICKY;\r
}\r
- if ("com.enqualcomm.support.ADD_DATAPOINTS".equals(paramIntent.getAction())) {\r
+ if (Constants.ACTION_ALARM_ADD_DATAPOINTS.equals(paramIntent.getAction())) {\r
setUpLocationDataAlarm(28800000L);\r
if (this.upLoadDataPoints != null) {\r
this.upLoadDataPoints.uploadCurrentLocation();\r
Logger.i("upLoadDataPoints=null");\r
return Service.START_STICKY;\r
}\r
- if ("com.enqualcomm.support.ACTION_STWORKMODE_ALARM".equals(paramIntent.getAction())) {\r
+ if (Constants.STWORKMODE_ALARM.equals(paramIntent.getAction())) {\r
if (this.startAlarmCount >= 5) {\r
alarmCycle = paramIntent.getIntExtra("lacation_cycle", 3);\r
setAlarm(alarmCycle);\r
FileOutputUtil.fileOutput(this, "alarmCycle", stringBuilder1.toString());\r
return Service.START_STICKY;\r
}\r
- if ("com.enqualcomm.support.UPDATE_SECRET_KEY".equals(paramIntent.getAction())) {\r
-// setUpdateSecretKeyAlarm();\r
-// this.invokeHandlerServiceChain.processUserRequest(paramIntent, this.connection, this.runtime);\r
- return Service.START_STICKY;\r
- }\r
- if ("com.enqualcomm.support.PASS_DATA".equals(paramIntent.getAction())) {\r
+\r
+ if (Constants.ACTION_PASS_DATA_TO_CM_SERVICES.equals(paramIntent.getAction())) {\r
deliverDataToCmApp(paramIntent.getIntExtra("cmdId", 0), paramIntent.getStringExtra("cmdJsonData"));\r
return Service.START_STICKY;\r
}\r
i = 3;\r
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);\r
Intent intent = new Intent(this, protocolMainServer.class);\r
- intent.setAction("com.enqualcomm.support.ACTION_ALARM");\r
+ intent.setAction(ACTION_ALARM);\r
PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, FLAG_UPDATE_CURRENT);\r
alarmManager.cancel(pendingIntent);\r
long l = SystemClock.elapsedRealtime();\r
}\r
}\r
\r
- public void setHeartAlarm() {}\r
+ public void setHeartAlarm() {\r
+ AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);\r
+ Intent intent = new Intent(this, protocolMainServer.class);\r
+ intent.setAction(ACTION_ALARM);\r
+ PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, FLAG_UPDATE_CURRENT);\r
+ alarmManager.cancel(pendingIntent);\r
+ long l = SystemClock.elapsedRealtime();\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append("setHeartAlarm 20秒");\r
+ Logger.i(stringBuilder.toString());\r
+ int sleeptime=20;\r
+ Log.i(TAG,"setHeartAlarm");\r
+ alarmManager.setExact(AlarmManager.ELAPSED_REALTIME_WAKEUP, l + ( sleeptime * 1000), pendingIntent);\r
+ }\r
\r
public void setUpLocationDataAlarm(long paramLong) {\r
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);\r
Intent intent = new Intent(this, protocolMainServer.class);\r
- intent.setAction("com.enqualcomm.support.ADD_DATAPOINTS");\r
+ intent.setAction(Constants.ACTION_ALARM_ADD_DATAPOINTS);\r
PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, FLAG_UPDATE_CURRENT);\r
alarmManager.cancel(pendingIntent);\r
alarmManager.setExact(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + paramLong, pendingIntent);\r
private WifiManager mWifiManager=null;\r
private Config mConfig=null;\r
private static Runtime mDevStat=null;\r
- private protocolAPIHelper mProtocolAPI=null;\r
+// private protocolAPIHelper mProtocolAPI=null;\r
\r
\r
private void log(String msg) {\r
mDevStat =new Runtime();\r
log("new mDevStat");\r
}\r
- if (mProtocolAPI == null) mProtocolAPI = new protocolAPIHelper();\r
+// if (mProtocolAPI == null) mProtocolAPI = new protocolAPIHelper();\r
if (mWifiManager == null) mWifiManager = (WifiManager)this.getApplicationContext().getSystemService(Context.WIFI_SERVICE);\r
if (lbshelper==null) lbshelper = new LBSHelper(this,mWifiManager,mDevStat);\r
\r
}\r
\r
public void testGpsData(){\r
- mProtocolAPI.AP01(mDevStat);\r
- log( mProtocolAPI.AP01(mDevStat));\r
+// mProtocolAPI.AP01(mDevStat);\r
+// log( mProtocolAPI.AP01(mDevStat));\r
}\r
private void stopTimer(){\r
if (mTimer_keepalive !=null){\r
import android.content.Context;\r
import android.content.Intent;\r
import android.os.SystemClock;\r
+import android.util.Log;\r
\r
import com.ic.protocol.bean.Runtime;\r
\r
stringBuilder.append(l);\r
stringBuilder.append("---lastAlarmTime=");\r
stringBuilder.append(lastAlarmTime);\r
+ Log.i("AlarmWakeUp",stringBuilder.toString());\r
FileOutputUtil.fileOutput(context, "alarmWakeUp", stringBuilder.toString());\r
} \r
}\r
--- /dev/null
+package com.ic.protocol.utils;\r
+\r
+import android.content.Context;\r
+import android.content.Intent;\r
+import android.graphics.Bitmap;\r
+import android.graphics.BitmapFactory;\r
+import android.graphics.Matrix;\r
+import android.graphics.SurfaceTexture;\r
+import android.hardware.Camera;\r
+import android.media.ToneGenerator;\r
+import android.os.Environment;\r
+import android.os.StatFs;\r
+import android.view.SurfaceView;\r
+import android.view.WindowManager;\r
+\r
+import java.io.BufferedOutputStream;\r
+import java.io.File;\r
+import java.io.FileOutputStream;\r
+\r
+public class CameraUtil implements SurfaceTexture.OnFrameAvailableListener {\r
+ Context context;\r
+ \r
+ private Camera.PictureCallback jpegCallback = new Camera.PictureCallback() {\r
+ public void onPictureTaken(byte[] param1ArrayOfByte, Camera param1Camera) {\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append("format=");\r
+ stringBuilder.append(CameraUtil.this.mPs.getPictureFormat());\r
+ Logger.i(stringBuilder.toString());\r
+ if (CameraUtil.this.mPs.getPictureFormat() == 256) {\r
+ String str = CameraUtil.this.savePicture(param1ArrayOfByte);\r
+ if (str != null) {\r
+ Intent intent = new Intent(CameraUtil.this.context, com.ic.protocol.service.protocolMainServer.class);\r
+ intent.setAction("com.enqualcomm.support.ACTION_REMOTE_CAMERA");\r
+ intent.putExtra("filepath", str);\r
+ intent.putExtra("number", CameraUtil.this.mNumber);\r
+ CameraUtil.this.context.startService(intent);\r
+ } else {\r
+ Logger.i("空间不足,保存失败");\r
+ } \r
+ } \r
+ CameraUtil.this.releaseCamera();\r
+ }\r
+ };\r
+ \r
+ private Camera mCamera;\r
+ \r
+ String mNumber;\r
+ \r
+ private int mOrientation;\r
+ \r
+ private Camera.Parameters mPs;\r
+ \r
+ private Camera.ShutterCallback shutterCallback = new Camera.ShutterCallback() {\r
+ public void onShutter() { Logger.i("shutterCallback"); }\r
+ };\r
+ \r
+ private SurfaceTexture surfaceTexture;\r
+ \r
+ private ToneGenerator tone;\r
+ \r
+ public CameraUtil(Context paramContext) { this.context = paramContext; }\r
+ \r
+ private Camera openFacingBackCamera() {\r
+ Camera.CameraInfo cameraInfo = new Camera.CameraInfo();\r
+ int i = Camera.getNumberOfCameras();\r
+ Camera camera = null;\r
+ byte b = 0;\r
+ while (b < i) {\r
+ Camera.getCameraInfo(b, cameraInfo);\r
+\r
+ if (cameraInfo.facing == 0) {\r
+ try {\r
+ camera = Camera.open(b);\r
+ } catch (RuntimeException e) {\r
+ e.printStackTrace();\r
+ }\r
+ }\r
+ b++;\r
+ } \r
+ return camera;\r
+ }\r
+ \r
+ private void releaseCamera() {\r
+ if (this.mCamera != null)\r
+ try {\r
+ if (this.surfaceTexture != null)\r
+ this.surfaceTexture.setOnFrameAvailableListener(null); \r
+ this.mCamera.setPreviewTexture(null);\r
+ this.mCamera.stopPreview();\r
+ } catch (Exception exception) {\r
+ exception.printStackTrace();\r
+ } \r
+ this.mCamera.release();\r
+ }\r
+ \r
+ private String savePicture(byte[] paramArrayOfByte) {\r
+ String str = null;\r
+ try {\r
+ if (Environment.getExternalStorageState().equals("mounted")) {\r
+ if ((new StatFs(Environment.getExternalStorageDirectory().toString())).getAvailableBytes() < paramArrayOfByte.length)\r
+ return null; \r
+ str = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES).getAbsolutePath();\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append(str);\r
+ stringBuilder.append("/RemoteCamera.jpg");\r
+ str = stringBuilder.toString();\r
+ Bitmap bitmap2 = BitmapFactory.decodeByteArray(paramArrayOfByte, 0, paramArrayOfByte.length);\r
+ Bitmap bitmap1 = bitmap2;\r
+ if ((this.context.getResources().getConfiguration()).orientation == 1) {\r
+ Matrix matrix = new Matrix();\r
+ matrix.reset();\r
+ matrix.postRotate(this.mOrientation);\r
+ bitmap1 = Bitmap.createBitmap(bitmap2, 0, 0, bitmap2.getWidth(), bitmap2.getHeight(), matrix, true);\r
+ } \r
+ File file = new File(str);\r
+ if (!file.exists())\r
+ file.createNewFile(); \r
+ BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(file));\r
+ bitmap1.compress(Bitmap.CompressFormat.JPEG, 100, bufferedOutputStream);\r
+ bufferedOutputStream.flush();\r
+ bufferedOutputStream.close();\r
+ } \r
+ return str;\r
+ } catch (Exception e) {\r
+ e.printStackTrace();\r
+ return null;\r
+ } \r
+ }\r
+ \r
+ private void takePicture(Context paramContext) {\r
+ if (this.mCamera != null) {\r
+ SurfaceView surfaceView = new SurfaceView(paramContext);\r
+ try {\r
+ this.mCamera.setPreviewDisplay(surfaceView.getHolder());\r
+ this.mPs = this.mCamera.getParameters();\r
+ this.mPs.setPictureSize(640, 480);\r
+ Logger.i("CameraUtil---setCameraDisplayOrientation");\r
+ setCameraDisplayOrientation(paramContext, 0, this.mCamera);\r
+ this.mCamera.setParameters(this.mPs);\r
+ Logger.i("CameraUtil---startPreview");\r
+ this.surfaceTexture = new SurfaceTexture(10);\r
+ this.surfaceTexture.setOnFrameAvailableListener(this);\r
+ this.mCamera.setPreviewTexture(this.surfaceTexture);\r
+ this.mCamera.startPreview();\r
+ this.mCamera.enableShutterSound(false);\r
+ (new Thread(new Runnable() {\r
+ public void run() {\r
+ try {\r
+ CameraUtil.this.mCamera.takePicture(CameraUtil.this.shutterCallback, null, CameraUtil.this.jpegCallback);\r
+ Thread.sleep(5000L);\r
+ return;\r
+ } catch (Exception exception) {\r
+ exception.printStackTrace();\r
+ CameraUtil.this.releaseCamera();\r
+ return;\r
+ } \r
+ }\r
+ })).start();\r
+ return;\r
+ } catch (Exception e) {\r
+ e.printStackTrace();\r
+ releaseCamera();\r
+ } \r
+ } \r
+ }\r
+ \r
+ public int getDisplayRotation(Context paramContext) {\r
+ int i = ((WindowManager)paramContext.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getRotation();\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append("getDisplayRotation rotation=");\r
+ stringBuilder.append(i);\r
+ Logger.i(stringBuilder.toString());\r
+ switch (i) {\r
+ default:\r
+ return 0;\r
+ case 3:\r
+ return 270;\r
+ case 2:\r
+ return 180;\r
+ case 1:\r
+ return 90;\r
+ case 0:\r
+ break;\r
+ } \r
+ return 0;\r
+ }\r
+ \r
+ public void getPictur(String paramString) {\r
+ this.mCamera = openFacingBackCamera();\r
+ takePicture(this.context);\r
+ this.mNumber = paramString;\r
+ }\r
+ \r
+ public void onFrameAvailable(SurfaceTexture paramSurfaceTexture) { Logger.i("onFrameAvailable"); }\r
+ \r
+ public void setCameraDisplayOrientation(Context paramContext, int paramInt, Camera paramCamera) {\r
+ Camera.CameraInfo cameraInfo = new Camera.CameraInfo();\r
+ Camera.getCameraInfo(paramInt, cameraInfo);\r
+ paramInt = getDisplayRotation(paramContext);\r
+ if (cameraInfo.facing == 1) {\r
+ paramInt = (360 - (cameraInfo.orientation + paramInt) % 360) % 360;\r
+ } else {\r
+ paramInt = (cameraInfo.orientation - paramInt + 360) % 360;\r
+ } \r
+ paramCamera.setDisplayOrientation(paramInt);\r
+ this.mOrientation = paramInt;\r
+ }\r
+}\r
+\r
}\r
\r
private void initAlarmAndSilent() {\r
-// Calendar calendar2 = Calendar.getInstance();\r
-// calendar2.set(13, 0);\r
-// long l = System.currentTimeMillis();\r
-// Cursor cursor2 = this.context.getContentResolver().query(EQCContentProvider.ALARM_URI, null, null, null, null);\r
-// byte b2 = 3;\r
-// byte b1 = 5;\r
-// char c = '\002';\r
-// if (cursor2 != null) {\r
-// while (cursor2.moveToNext()) {\r
-// if ("ON".equals(cursor2.getString(4))) {\r
-// String str2 = cursor2.getString(1);\r
-// String str1 = cursor2.getString(c);\r
-// String str3 = cursor2.getString(b2);\r
-// String str4 = cursor2.getString(b1);\r
-// calendar2.set(11, Integer.parseInt(str2.substring(c, 4)));\r
-// calendar2.set(12, Integer.parseInt(str2.substring(b1, 7)));\r
-// char[] arrayOfChar = str1.toCharArray();\r
-// int i = arrayOfChar.length;\r
-// byte b = 1;\r
-// while (b < i) {\r
-// c = arrayOfChar[b] - '/';\r
-// calendar2.set(7, c);\r
-// long l1 = calendar2.getTimeInMillis();\r
-// if (l1 <= l)\r
-// l1 += 604800000L;\r
-// PendingIntent pendingIntent = getPendingIntent(str2, str1, str3, str4, c);\r
-// AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
-// b++;\r
-// c = '\002';\r
-// b1 = 5;\r
-// b2 = 3;\r
-// }\r
-// }\r
-// }\r
-// cursor2.close();\r
-// }\r
-// Calendar calendar1 = Calendar.getInstance();\r
-// calendar1.set(13, 0);\r
-// Cursor cursor1 = this.context.getContentResolver().query(EQCContentProvider.NOTICE_URL, null, null, null, null);\r
-// if (cursor1 != null) {\r
-// while (cursor1.moveToNext()) {\r
-// String str1 = cursor1.getString(1);\r
-// String str2 = cursor1.getString(2);\r
-// String str3 = cursor1.getString(3);\r
-// String str4 = cursor1.getString(4);\r
-// String str5 = cursor1.getString(5);\r
-// String str6 = cursor1.getString(6);\r
-// String str7 = cursor1.getString(6);\r
-// if (str1 != null) {\r
-// String str8 = str1.substring(0, 4);\r
-// String str9 = str1.substring(4, 6);\r
-// String str10 = str1.substring(6, 8);\r
-// String str11 = str1.substring(8, 10);\r
-// String str12 = str1.substring(10, 12);\r
-// calendar1.set(1, Integer.valueOf(str8).intValue());\r
-// calendar1.set(2, Integer.valueOf(str9).intValue());\r
-// calendar1.set(5, Integer.valueOf(str10).intValue());\r
-// calendar1.set(11, Integer.valueOf(str11).intValue());\r
-// calendar1.set(12, Integer.valueOf(str12).intValue());\r
-// long l1 = calendar1.getTimeInMillis();\r
-// if (l1 > l) {\r
-// PendingIntent pendingIntent = getPendingIntent(str1, str2, str3, str4, str5, str6, str7);\r
-// AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
-// }\r
-// }\r
-// }\r
-// cursor1.close();\r
-// }\r
+ Calendar calendar2 = Calendar.getInstance();\r
+ calendar2.set(Calendar.SECOND, 0);\r
+ long l = System.currentTimeMillis();\r
+ Cursor cursor2 = this.context.getContentResolver().query(ICContentProvider.ALARM_URI, null, null, null, null);\r
+ byte b2 = 3;\r
+ byte b1 = 5;\r
+ char c = '\002';\r
+ if (cursor2 != null) {\r
+ while (cursor2.moveToNext()) {\r
+ if ("ON".equals(cursor2.getString(4))) {\r
+ String str2 = cursor2.getString(1);\r
+ String str1 = cursor2.getString(c);\r
+ String str3 = cursor2.getString(b2);\r
+ String str4 = cursor2.getString(b1);\r
+ calendar2.set(Calendar.HOUR_OF_DAY, Integer.parseInt(str2.substring(c, 4)));\r
+ calendar2.set(Calendar.MINUTE, Integer.parseInt(str2.substring(b1, 7)));\r
+ char[] arrayOfChar = str1.toCharArray();\r
+ int i = arrayOfChar.length;\r
+ byte b = 1;\r
+ while (b < i) {\r
+ c = (char)(arrayOfChar[b] - '/');\r
+ calendar2.set(Calendar.DAY_OF_WEEK, c);\r
+ long l1 = calendar2.getTimeInMillis();\r
+ if (l1 <= l)\r
+ l1 += 604800000L;\r
+ PendingIntent pendingIntent = getPendingIntent(str2, str1, str3, str4, c);\r
+ AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
+ b++;\r
+ c = '\002';\r
+ b1 = 5;\r
+ b2 = 3;\r
+ }\r
+ }\r
+ }\r
+ cursor2.close();\r
+ }\r
+ Calendar calendar1 = Calendar.getInstance();\r
+ calendar1.set(Calendar.SECOND, 0);\r
+ Cursor cursor1 = this.context.getContentResolver().query(ICContentProvider.NOTICE_URL, null, null, null, null);\r
+ if (cursor1 != null) {\r
+ while (cursor1.moveToNext()) {\r
+ String str1 = cursor1.getString(1);\r
+ String str2 = cursor1.getString(2);\r
+ String str3 = cursor1.getString(3);\r
+ String str4 = cursor1.getString(4);\r
+ String str5 = cursor1.getString(5);\r
+ String str6 = cursor1.getString(6);\r
+ String str7 = cursor1.getString(6);\r
+ if (str1 != null) {\r
+ String year = str1.substring(0, 4);\r
+ String month = str1.substring(4, 6);\r
+ String str10 = str1.substring(6, 8);\r
+ String str11 = str1.substring(8, 10);\r
+ String str12 = str1.substring(10, 12);\r
+ calendar1.set(Calendar.YEAR, Integer.valueOf(year).intValue());\r
+ calendar1.set(Calendar.MONTH, Integer.valueOf(month).intValue());\r
+ calendar1.set(Calendar.DAY_OF_MONTH, Integer.valueOf(str10).intValue());\r
+ calendar1.set(Calendar.HOUR_OF_DAY, Integer.valueOf(str11).intValue());\r
+ calendar1.set(Calendar.MINUTE, Integer.valueOf(str12).intValue());\r
+ long l1 = calendar1.getTimeInMillis();\r
+ if (l1 > l) {\r
+ PendingIntent pendingIntent = getPendingIntent(str1, str2, str3, str4, str5, str6, str7);\r
+ AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
+ }\r
+ }\r
+ }\r
+ cursor1.close();\r
+ }\r
}\r
\r
public LocationManager getLocationManager() { return this.locationManager; }\r
}\r
\r
public void resolverAlarm(ArrayList<Alarm> paramArrayList) {\r
-// Cursor cursor = this.context.getContentResolver().query(ICContentProvider.ALARM_URI, null, null, null, null);\r
-// char c = '\001';\r
-// if (cursor != null) {\r
-// while (cursor.moveToNext()) {\r
-// if ("ON".equals(cursor.getString(4))) {\r
-// String str1 = cursor.getString(c);\r
-// String str2 = cursor.getString(2);\r
-// String str3 = cursor.getString(3);\r
-// String str4 = cursor.getString(5);\r
-// char[] arrayOfChar = str2.toCharArray();\r
-// int i = arrayOfChar.length;\r
-// byte b = 1;\r
-// while (b < i) {\r
-// c = arrayOfChar[b];\r
-// this.alarmManager.cancel(getPendingIntent(str1, str2, str3, str4, c - '/'));\r
-// b++;\r
-// c = '\001';\r
-// }\r
-// }\r
-// }\r
-// cursor.close();\r
-// }\r
-// Calendar calendar = Calendar.getInstance();\r
-// calendar.set(13, 0);\r
-// long l = System.currentTimeMillis();\r
-// for (Alarm alarm : paramArrayList) {\r
-// long l1 = l;\r
-// if ("ON".equals(alarm.status)) {\r
-// int i = Integer.parseInt(alarm.time.substring(2, 4));\r
-// int j = Integer.parseInt(alarm.time.substring(5, 7));\r
-// calendar.set(11, i);\r
-// calendar.set(12, j);\r
-// char[] arrayOfChar = alarm.week.toCharArray();\r
-// i = arrayOfChar.length;\r
-// j = 1;\r
-// while (true) {\r
-// l1 = l;\r
-// if (j < i) {\r
-// c = arrayOfChar[j] - '/';\r
-// calendar.set(7, c);\r
-// long l2 = calendar.getTimeInMillis();\r
-// l1 = l2;\r
-// if (l2 <= l)\r
-// l1 = l2 + 604800000L;\r
-// PendingIntent pendingIntent = getPendingIntent(alarm.time, alarm.week, alarm.ring, alarm.name, c);\r
-// AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
-// j++;\r
-// continue;\r
-// }\r
-// break;\r
-// }\r
-// }\r
-// l = l1;\r
-// }\r
+ Cursor cursor = this.context.getContentResolver().query(ICContentProvider.ALARM_URI, null, null, null, null);\r
+ char c = '\001';\r
+ if (cursor != null) {\r
+ while (cursor.moveToNext()) {\r
+ if ("ON".equals(cursor.getString(4))) {\r
+ String str1 = cursor.getString(c);\r
+ String str2 = cursor.getString(2);\r
+ String str3 = cursor.getString(3);\r
+ String str4 = cursor.getString(5);\r
+ char[] arrayOfChar = str2.toCharArray();\r
+ int i = arrayOfChar.length;\r
+ byte b = 1;\r
+ while (b < i) {\r
+ c = arrayOfChar[b];\r
+ this.alarmManager.cancel(getPendingIntent(str1, str2, str3, str4, c - '/'));\r
+ b++;\r
+ c = '\001';\r
+ }\r
+ }\r
+ }\r
+ cursor.close();\r
+ }\r
+ Calendar calendar = Calendar.getInstance();\r
+ calendar.set(Calendar.SECOND, 0);\r
+ long l = System.currentTimeMillis();\r
+ for (Alarm alarm : paramArrayList) {\r
+ long l1 = l;\r
+ if ("ON".equals(alarm.status)) {\r
+ int i = Integer.parseInt(alarm.time.substring(2, 4));\r
+ int j = Integer.parseInt(alarm.time.substring(5, 7));\r
+ calendar.set(Calendar.HOUR_OF_DAY, i);\r
+ calendar.set(Calendar.MINUTE, j);\r
+ char[] arrayOfChar = alarm.week.toCharArray();\r
+ i = arrayOfChar.length;\r
+ j = 1;\r
+ while (true) {\r
+ l1 = l;\r
+ if (j < i) {\r
+ c = ( char)(arrayOfChar[j] - '/');\r
+ calendar.set(Calendar.DAY_OF_WEEK, c);\r
+ long l2 = calendar.getTimeInMillis();\r
+ l1 = l2;\r
+ if (l2 <= l)\r
+ l1 = l2 + 604800000L;\r
+ PendingIntent pendingIntent = getPendingIntent(alarm.time, alarm.week, alarm.ring, alarm.name, c);\r
+ AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
+ j++;\r
+ continue;\r
+ }\r
+ break;\r
+ }\r
+ }\r
+ l = l1;\r
+ }\r
}\r
\r
public void resolverNotice(ArrayList<NoticeContent> paramArrayList) {\r
-// Cursor cursor = this.context.getContentResolver().query(EQCContentProvider.NOTICE_URL, null, null, null, null);\r
-// if (cursor != null) {\r
-// while (cursor.moveToNext()) {\r
-// String str1 = cursor.getString(1);\r
-// String str2 = cursor.getString(2);\r
-// String str3 = cursor.getString(3);\r
-// String str4 = cursor.getString(4);\r
-// String str5 = cursor.getString(5);\r
-// String str6 = cursor.getString(6);\r
-// String str7 = cursor.getString(6);\r
-// this.alarmManager.cancel(getPendingIntent(str1, str2, str3, str4, str5, str6, str7));\r
-// }\r
-// cursor.close();\r
-// }\r
-// for (NoticeContent noticeContent : paramArrayList) {\r
-// String str1 = noticeContent.noticeTime;\r
-// String str2 = noticeContent.noticeName;\r
-// String str3 = noticeContent.noticeNumber;\r
-// String str4 = noticeContent.noticeID;\r
-// String str5 = noticeContent.noticeCategory;\r
-// String str6 = noticeContent.noticeFrequency;\r
-// String str7 = noticeContent.noticeContent;\r
-// Calendar calendar = Calendar.getInstance();\r
-// long l = System.currentTimeMillis();\r
-// calendar.set(13, 0);\r
-// if (str1 != null) {\r
-// String str8 = str1.substring(0, 4);\r
-// String str9 = str1.substring(4, 6);\r
-// String str10 = str1.substring(6, 8);\r
-// String str11 = str1.substring(8, 10);\r
-// String str12 = str1.substring(10, 12);\r
-// calendar.set(1, Integer.valueOf(str8).intValue());\r
-// calendar.set(2, Integer.valueOf(str9).intValue() - 1);\r
-// calendar.set(5, Integer.valueOf(str10).intValue());\r
-// calendar.set(11, Integer.valueOf(str11).intValue());\r
-// calendar.set(12, Integer.valueOf(str12).intValue());\r
-// long l1 = calendar.getTimeInMillis();\r
-// if (l1 >= l) {\r
-// PendingIntent pendingIntent = getPendingIntent(str1, str2, str3, str4, str5, str6, str7);\r
-// AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
-// }\r
-// }\r
-// }\r
+ Cursor cursor = this.context.getContentResolver().query(ICContentProvider.NOTICE_URL, null, null, null, null);\r
+ if (cursor != null) {\r
+ while (cursor.moveToNext()) {\r
+ String str1 = cursor.getString(1);\r
+ String str2 = cursor.getString(2);\r
+ String str3 = cursor.getString(3);\r
+ String str4 = cursor.getString(4);\r
+ String str5 = cursor.getString(5);\r
+ String str6 = cursor.getString(6);\r
+ String str7 = cursor.getString(6);\r
+ this.alarmManager.cancel(getPendingIntent(str1, str2, str3, str4, str5, str6, str7));\r
+ }\r
+ cursor.close();\r
+ }\r
+ for (NoticeContent noticeContent : paramArrayList) {\r
+ String str1 = noticeContent.noticeTime;\r
+ String str2 = noticeContent.noticeName;\r
+ String str3 = noticeContent.noticeNumber;\r
+ String str4 = noticeContent.noticeID;\r
+ String str5 = noticeContent.noticeCategory;\r
+ String str6 = noticeContent.noticeFrequency;\r
+ String str7 = noticeContent.noticeContent;\r
+ Calendar calendar = Calendar.getInstance();\r
+ long l = System.currentTimeMillis();\r
+ calendar.set(Calendar.SECOND, 0);\r
+ if (str1 != null) {\r
+ String str8 = str1.substring(0, 4);\r
+ String str9 = str1.substring(4, 6);\r
+ String str10 = str1.substring(6, 8);\r
+ String str11 = str1.substring(8, 10);\r
+ String str12 = str1.substring(10, 12);\r
+ calendar.set(Calendar.YEAR, Integer.valueOf(str8).intValue());\r
+ calendar.set(Calendar.MONTH, Integer.valueOf(str9).intValue() - 1);\r
+ calendar.set(Calendar.DAY_OF_MONTH, Integer.valueOf(str10).intValue());\r
+ calendar.set(Calendar.HOUR_OF_DAY, Integer.valueOf(str11).intValue());\r
+ calendar.set(Calendar.MINUTE, Integer.valueOf(str12).intValue());\r
+ long l1 = calendar.getTimeInMillis();\r
+ if (l1 >= l) {\r
+ PendingIntent pendingIntent = getPendingIntent(str1, str2, str3, str4, str5, str6, str7);\r
+ AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
+ }\r
+ }\r
+ }\r
}\r
\r
public void resolverSilent(ArrayList<Silent> paramArrayList) {\r
-// Calendar calendar1 = Calendar.getInstance();\r
-// calendar1.set(13, 0);\r
-// Calendar calendar2 = Calendar.getInstance();\r
-// calendar2.set(13, 0);\r
-// long l = System.currentTimeMillis();\r
-// Cursor cursor = this.context.getContentResolver().query(EQCContentProvider.SILENT_URI, null, null, null, null);\r
-// char c = '\013';\r
-// int j = 5;\r
-// int k = 4;\r
-// if (cursor != null) {\r
-// char c1 = Character.MIN_VALUE;\r
-// while (cursor.moveToNext()) {\r
-// if ("ON".equals(cursor.getString(k))) {\r
-// String str1 = cursor.getString(1);\r
-// String str2 = cursor.getString(2);\r
-// String str3 = cursor.getString(3);\r
-// if (!c1) {\r
-// int n = Integer.parseInt(str1.substring(2, k));\r
-// int i1 = Integer.parseInt(str1.substring(j, 7));\r
-// calendar1.set(c, n);\r
-// calendar1.set(12, i1);\r
-// n = Integer.parseInt(str2.substring(2, k));\r
-// i1 = Integer.parseInt(str2.substring(j, 7));\r
-// calendar2.set(c, n);\r
-// calendar2.set(12, i1);\r
-// }\r
-// char[] arrayOfChar = str3.toCharArray();\r
-// int m = arrayOfChar.length;\r
-// byte b = 1;\r
-// char c2 = k;\r
-// k = j;\r
-// j = c;\r
-// while (b < m) {\r
-// j = arrayOfChar[b] - '/';\r
-// this.alarmManager.cancel(getPendingIntent(str1, str2, str3, j));\r
-// c = c1;\r
-// if (c1 == Character.MIN_VALUE) {\r
-// calendar1.set(7, j);\r
-// long l1 = calendar1.getTimeInMillis();\r
-// calendar2.set(7, j);\r
-// long l2 = calendar2.getTimeInMillis();\r
-// c = c1;\r
-// if (l1 <= l) {\r
-// c = c1;\r
-// if (l2 > l)\r
-// c = '\001';\r
-// }\r
-// }\r
-// b++;\r
-// j = 11;\r
-// k = 5;\r
-// c2 = '\004';\r
-// c1 = c;\r
-// }\r
-// c = j;\r
-// j = k;\r
-// k = c2;\r
-// }\r
-// }\r
-// cursor.close();\r
-// c = c1;\r
-// } else {\r
-// c = Character.MIN_VALUE;\r
-// }\r
-// Iterator iterator = paramArrayList.iterator();\r
-// int i;\r
-// for (i = 0; iterator.hasNext(); i = k) {\r
-// Silent silent = (Silent)iterator.next();\r
-// k = i;\r
-// if ("ON".equals(silent.status)) {\r
-// j = Integer.parseInt(silent.start.substring(2, 4));\r
-// k = Integer.parseInt(silent.start.substring(5, 7));\r
-// calendar1.set(11, j);\r
-// calendar1.set(12, k);\r
-// j = Integer.parseInt(silent.end.substring(2, 4));\r
-// k = Integer.parseInt(silent.end.substring(5, 7));\r
-// calendar2.set(11, j);\r
-// calendar2.set(12, k);\r
-// char[] arrayOfChar = silent.week.toCharArray();\r
-// int m = arrayOfChar.length;\r
-// j = 1;\r
-// while (true) {\r
-// k = i;\r
-// if (j < m) {\r
-// k = arrayOfChar[j] - '/';\r
-// calendar1.set(7, k);\r
-// long l1 = calendar1.getTimeInMillis();\r
-// calendar2.set(7, k);\r
-// long l2 = calendar2.getTimeInMillis();\r
-// if (l1 <= l)\r
-// if (l2 <= l) {\r
-// l1 += 604800000L;\r
-// } else {\r
-// i = 1;\r
-// }\r
-// PendingIntent pendingIntent = getPendingIntent(silent.start, silent.end, silent.week, k);\r
-// AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
-// j++;\r
-// continue;\r
-// }\r
-// break;\r
-// }\r
-// }\r
-// }\r
-// if (c != '\000' && i == 0) {\r
-// Intent intent = new Intent(this.context, com.enqualcomm.support.CoreService.class);\r
-// intent.setAction("com.enqualcomm.icare.ACTION_ISSILENCE");\r
-// intent.putExtra("SilentData", "silent:cancel");\r
-// this.context.startService(intent);\r
-// }\r
+ Calendar calendar1 = Calendar.getInstance();\r
+ calendar1.set(Calendar.SECOND, 0);\r
+ Calendar calendar2 = Calendar.getInstance();\r
+ calendar2.set(Calendar.SECOND, 0);\r
+ long l = System.currentTimeMillis();\r
+ Cursor cursor = this.context.getContentResolver().query(ICContentProvider.SILENT_URI, null, null, null, null);\r
+ char c = '\013';\r
+ int j = 5;\r
+ int k = 4;\r
+ if (cursor != null) {\r
+ char c1 = Character.MIN_VALUE;\r
+ while (cursor.moveToNext()) {\r
+ if ("ON".equals(cursor.getString(k))) {\r
+ String str1 = cursor.getString(1);\r
+ String str2 = cursor.getString(2);\r
+ String str3 = cursor.getString(3);\r
+ if (!(c1==Character.MIN_VALUE)) {\r
+ int n = Integer.parseInt(str1.substring(2, k));\r
+ int i1 = Integer.parseInt(str1.substring(j, 7));\r
+ calendar1.set(c, n);\r
+ calendar1.set(Calendar.MINUTE, i1);\r
+ n = Integer.parseInt(str2.substring(2, k));\r
+ i1 = Integer.parseInt(str2.substring(j, 7));\r
+ calendar2.set(c, n);\r
+ calendar2.set(Calendar.MINUTE, i1);\r
+ }\r
+ char[] arrayOfChar = str3.toCharArray();\r
+ int m = arrayOfChar.length;\r
+ byte b = 1;\r
+ char c2 = (char)k;\r
+ k = j;\r
+ j = c;\r
+ while (b < m) {\r
+ j = arrayOfChar[b] - '/';\r
+ this.alarmManager.cancel(getPendingIntent(str1, str2, str3, j));\r
+ c = c1;\r
+ if (c1 == Character.MIN_VALUE) {\r
+ calendar1.set(Calendar.DAY_OF_WEEK, j);\r
+ long l1 = calendar1.getTimeInMillis();\r
+ calendar2.set(Calendar.DAY_OF_WEEK, j);\r
+ long l2 = calendar2.getTimeInMillis();\r
+ c = c1;\r
+ if (l1 <= l) {\r
+ c = c1;\r
+ if (l2 > l)\r
+ c = '\001';\r
+ }\r
+ }\r
+ b++;\r
+ j = 11;\r
+ k = 5;\r
+ c2 = '\004';\r
+ c1 = c;\r
+ }\r
+ c = (char)j;\r
+ j = k;\r
+ k = c2;\r
+ }\r
+ }\r
+ cursor.close();\r
+ c = c1;\r
+ } else {\r
+ c = Character.MIN_VALUE;\r
+ }\r
+ Iterator iterator = paramArrayList.iterator();\r
+ int i;\r
+ for (i = 0; iterator.hasNext(); i = k) {\r
+ Silent silent = (Silent)iterator.next();\r
+ k = i;\r
+ if ("ON".equals(silent.status)) {\r
+ j = Integer.parseInt(silent.start.substring(2, 4));\r
+ k = Integer.parseInt(silent.start.substring(5, 7));\r
+ calendar1.set(Calendar.HOUR_OF_DAY, j);\r
+ calendar1.set(Calendar.MINUTE, k);\r
+ j = Integer.parseInt(silent.end.substring(2, 4));\r
+ k = Integer.parseInt(silent.end.substring(5, 7));\r
+ calendar2.set(Calendar.HOUR_OF_DAY, j);\r
+ calendar2.set(Calendar.MINUTE, k);\r
+ char[] arrayOfChar = silent.week.toCharArray();\r
+ int m = arrayOfChar.length;\r
+ j = 1;\r
+ while (true) {\r
+ k = i;\r
+ if (j < m) {\r
+ k = arrayOfChar[j] - '/';\r
+ calendar1.set(Calendar.DAY_OF_WEEK, k);\r
+ long l1 = calendar1.getTimeInMillis();\r
+ calendar2.set(Calendar.DAY_OF_WEEK, k);\r
+ long l2 = calendar2.getTimeInMillis();\r
+ if (l1 <= l)\r
+ if (l2 <= l) {\r
+ l1 += 604800000L;\r
+ } else {\r
+ i = 1;\r
+ }\r
+ PendingIntent pendingIntent = getPendingIntent(silent.start, silent.end, silent.week, k);\r
+ AlarmHelper.setAlarm(this.alarmManager, l1, pendingIntent);\r
+ j++;\r
+ continue;\r
+ }\r
+ break;\r
+ }\r
+ }\r
+ }\r
+ if (c != '\000' && i == 0) {\r
+ Intent intent = new Intent(this.context, com.ic.protocol.service.protocolMainServer.class);\r
+ intent.setAction("com.enqualcomm.icare.ACTION_ISSILENCE");\r
+ intent.putExtra("SilentData", "silent:cancel");\r
+ this.context.startService(intent);\r
+ }\r
}\r
\r
public void sendBroadcast(String cmd, Runtime dev) {\r
--- /dev/null
+package com.ic.protocol.utils;\r
+\r
+import android.app.Dialog;\r
+import android.content.Context;\r
+import android.content.DialogInterface;\r
+import android.view.LayoutInflater;\r
+import android.view.View;\r
+import android.view.ViewGroup;\r
+import android.widget.Button;\r
+import android.widget.ImageButton;\r
+import android.widget.LinearLayout;\r
+import android.widget.TextView;\r
+\r
+public class CustomDialog extends Dialog {\r
+ public CustomDialog(Context paramContext) { super(paramContext); }\r
+ \r
+ public CustomDialog(Context paramContext, int paramInt) { super(paramContext, paramInt); }\r
+ \r
+ public static class Builder {\r
+ private int app_id;\r
+ \r
+ private View contentView;\r
+ \r
+ private Context context;\r
+ \r
+ private CustomDialog mDialog;\r
+ \r
+ private String message;\r
+ \r
+ private OnClickListener negativeButtonClickListener;\r
+\r
+ private String negativeButtonText;\r
+\r
+ private OnClickListener positiveButtonClickListener;\r
+\r
+ private String positiveButtonText;\r
+\r
+ private String title;\r
+\r
+ public Builder(Context param1Context) { this.context = param1Context; }\r
+\r
+ private CustomDialog getDialogInstance() {\r
+// this.mDialog = new CustomDialog(this.context, 2131689630);\r
+// View view = (LayoutInflater)this.context.getSystemService("layout_inflater");\r
+// if (this.app_id == 2) {\r
+// view = view.inflate(2131361824, null);\r
+// } else {\r
+// view = view.inflate(2131361825, null);\r
+// }\r
+// this.mDialog.addContentView(view, new ViewGroup.LayoutParams(-1, -2));\r
+// ((TextView)view.findViewById(2131230876)).setText(this.title);\r
+// if (this.positiveButtonText != null) {\r
+// if (this.app_id != 2) {\r
+// ((ImageButton)view.findViewById(2131230836)).setImageResource(2131165276);\r
+// if (this.positiveButtonClickListener != null) {\r
+// final CustomDialog finalDialog1 = this.mDialog;\r
+// ((ImageButton)view.findViewById(2131230836)).setOnClickListener(new View.OnClickListener() {\r
+// public void onClick(View param2View) { CustomDialog.Builder.this.positiveButtonClickListener.onClick(finalDialog, -1); }\r
+// });\r
+// }\r
+// } else if (this.positiveButtonClickListener != null) {\r
+// final CustomDialog finalDialog1 = this.mDialog;\r
+// ((Button)view.findViewById(2131230836)).setOnClickListener(new View.OnClickListener() {\r
+// public void onClick(View param2View) { CustomDialog.Builder.this.positiveButtonClickListener.onClick(finalDialog, -1); }\r
+// });\r
+// }\r
+// } else {\r
+// view.findViewById(2131230836).setVisibility(8);\r
+// }\r
+// if (this.negativeButtonText != null) {\r
+// ((ImageButton)view.findViewById(2131230825)).setImageResource(2131165273);\r
+// if (this.negativeButtonClickListener != null) {\r
+// final CustomDialog finalDialog1 = this.mDialog;\r
+// ((ImageButton)view.findViewById(2131230825)).setOnClickListener(new View.OnClickListener() {\r
+// public void onClick(View param2View) { CustomDialog.Builder.this.negativeButtonClickListener.onClick(finalDialog1, -2); }\r
+// });\r
+// }\r
+// } else {\r
+// view.findViewById(2131230825).setVisibility(8);\r
+// }\r
+// if (this.message != null) {\r
+// ((TextView)view.findViewById(2131230822)).setText(this.message);\r
+// } else if (this.contentView != null) {\r
+// ((LinearLayout)view.findViewById(2131230793)).removeAllViews();\r
+// ((LinearLayout)view.findViewById(2131230793)).addView(this.contentView, new ViewGroup.LayoutParams(-1, -1));\r
+// }\r
+// this.mDialog.setContentView(view);\r
+ return this.mDialog;\r
+ }\r
+ \r
+ public CustomDialog create() { // Byte code:\r
+ // 0: aload_0\r
+ // 1: getfield mDialog : Lcom/enqualcomm/support/util/CustomDialog;\r
+ // 4: ifnonnull -> 37\r
+ // 7: ldc com/enqualcomm/support/util/CustomDialog\r
+ // 9: monitorenter\r
+ // 10: aload_0\r
+ // 11: getfield mDialog : Lcom/enqualcomm/support/util/CustomDialog;\r
+ // 14: ifnonnull -> 25\r
+ // 17: aload_0\r
+ // 18: aload_0\r
+ // 19: invokespecial getDialogInstance : ()Lcom/enqualcomm/support/util/CustomDialog;\r
+ // 22: putfield mDialog : Lcom/enqualcomm/support/util/CustomDialog;\r
+ // 25: ldc com/enqualcomm/support/util/CustomDialog\r
+ // 27: monitorexit\r
+ // 28: goto -> 37\r
+ // 31: astore_1\r
+ // 32: ldc com/enqualcomm/support/util/CustomDialog\r
+ // 34: monitorexit\r
+ // 35: aload_1\r
+ // 36: athrow\r
+ // 37: aload_0\r
+ // 38: getfield mDialog : Lcom/enqualcomm/support/util/CustomDialog;\r
+ // 41: areturn\r
+ // Exception table:\r
+ // from to target type\r
+ // 10 25 31 finally\r
+ // 25 28 31 finally\r
+ // 32 35 31 finally }\r
+ return mDialog;\r
+ }\r
+ public Builder setApp(int param1Int) {\r
+ this.app_id = param1Int;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setContentView(View param1View) {\r
+ this.contentView = param1View;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setMessage(int param1Int) {\r
+ this.message = (String)this.context.getText(param1Int);\r
+ return this;\r
+ }\r
+ \r
+ public Builder setMessage(String param1String) {\r
+ this.message = param1String;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setNegativeButton(int param1Int, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.negativeButtonText = (String)this.context.getText(param1Int);\r
+ this.negativeButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setNegativeButton(String param1String, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.negativeButtonText = param1String;\r
+ this.negativeButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setPositiveButton(int param1Int, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.positiveButtonText = (String)this.context.getText(param1Int);\r
+ this.positiveButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setPositiveButton(String param1String, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.positiveButtonText = param1String;\r
+ this.positiveButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setTitle(int param1Int) {\r
+ this.title = (String)this.context.getText(param1Int);\r
+ return this;\r
+ }\r
+ \r
+ public Builder setTitle(String param1String) {\r
+ this.title = param1String;\r
+ return this;\r
+ }\r
+ }\r
+\r
+}\r
+\r
--- /dev/null
+package com.ic.protocol.utils;\r
+\r
+import android.app.Dialog;\r
+import android.content.Context;\r
+import android.content.DialogInterface;\r
+import android.view.LayoutInflater;\r
+import android.view.MotionEvent;\r
+import android.view.View;\r
+import android.view.ViewGroup;\r
+import android.widget.ImageButton;\r
+import android.widget.ImageView;\r
+import android.widget.TextView;\r
+\r
+public class CustomNotification extends Dialog {\r
+ public CustomNotification(Context paramContext) { super(paramContext); }\r
+ \r
+ public CustomNotification(Context paramContext, int paramInt) { super(paramContext, paramInt); }\r
+ \r
+ public static class Builder {\r
+ private View contentView;\r
+ \r
+ private String content_messgae;\r
+ \r
+ private Context context;\r
+ \r
+ private CustomNotification mDialog;\r
+ \r
+ private String message;\r
+ \r
+ private int msg_count;\r
+ \r
+ private OnClickListener negativeButtonClickListener;\r
+\r
+ private String negativeButtonText;\r
+\r
+ private OnClickListener positiveButtonClickListener;\r
+\r
+ private String positiveButtonText;\r
+\r
+ private int time;\r
+\r
+ private String title;\r
+\r
+ private int titleImg;\r
+\r
+ private View.OnTouchListener viewOnTouchListener;\r
+\r
+ public Builder(Context param1Context) { this.context = param1Context; }\r
+\r
+ private CustomNotification getDialogInstance() {\r
+// this.mDialog = new CustomNotification(this.context, 2131689630);\r
+// View view = ((LayoutInflater)this.context.getSystemService("layout_inflater")).inflate(2131361841, null);\r
+// this.mDialog.addContentView(view, new ViewGroup.LayoutParams(-1, -2));\r
+// ((ImageView)view.findViewById(2131230809)).setImageResource(this.titleImg);\r
+// ((TextView)view.findViewById(2131230876)).setText(this.title);\r
+// if (this.time <= 0) {\r
+// ((TextView)view.findViewById(2131230875)).setText(this.context.getText(2131624052));\r
+// } else {\r
+// StringBuilder stringBuilder = new StringBuilder();\r
+// stringBuilder.append(String.valueOf(this.time));\r
+// stringBuilder.append(this.context.getText(2131624054));\r
+// String str = stringBuilder.toString();\r
+// ((TextView)view.findViewById(2131230875)).setText(str);\r
+// }\r
+// if (this.positiveButtonText != null) {\r
+// ((ImageButton)view.findViewById(2131230836)).setImageResource(2131165276);\r
+// if (this.positiveButtonClickListener != null) {\r
+// final CustomNotification finalDialog1 = this.mDialog;\r
+// ((ImageButton)view.findViewById(2131230836)).setOnClickListener(new View.OnClickListener() {\r
+// public void onClick(View param2View) { CustomNotification.Builder.this.positiveButtonClickListener.onClick(finalDialog, -1); }\r
+// });\r
+// }\r
+// } else {\r
+// view.findViewById(2131230836).setVisibility(View.GONE);\r
+// }\r
+// if (this.negativeButtonText != null) {\r
+// ((ImageButton)view.findViewById(2131230825)).setImageResource(2131165273);\r
+// if (this.negativeButtonClickListener != null) {\r
+// final CustomNotification finalDialog1 = this.mDialog;\r
+// ((ImageButton)view.findViewById(2131230825)).setOnClickListener(new View.OnClickListener() {\r
+// public void onClick(View param2View) { CustomNotification.Builder.this.negativeButtonClickListener.onClick(finalDialog1, -2); }\r
+// });\r
+// }\r
+// } else {\r
+// view.findViewById(2131230825).setVisibility(8);\r
+// }\r
+// if (this.message != null)\r
+// if (this.msg_count > 0) {\r
+// StringBuilder stringBuilder = new StringBuilder();\r
+// stringBuilder.append(this.message);\r
+// stringBuilder.append("(");\r
+// stringBuilder.append(String.valueOf(this.msg_count));\r
+// stringBuilder.append(")");\r
+// String str = stringBuilder.toString();\r
+// ((TextView)view.findViewById(2131230822)).setText(str);\r
+// } else {\r
+// ((TextView)view.findViewById(2131230822)).setText(this.message);\r
+// }\r
+// if (this.content_messgae != null)\r
+// ((TextView)view.findViewById(2131230793)).setText(this.content_messgae);\r
+// if (this.viewOnTouchListener != null)\r
+// view.setOnTouchListener(new View.OnTouchListener() {\r
+// public boolean onTouch(View param2View, MotionEvent param2MotionEvent) {\r
+// CustomNotification.Builder.this.viewOnTouchListener.onTouch(param2View, param2MotionEvent);\r
+// return true;\r
+// }\r
+// });\r
+// this.mDialog.setContentView(view);\r
+ return this.mDialog;\r
+ }\r
+ \r
+ public CustomNotification create() { // Byte code:\r
+ // 0: aload_0\r
+ // 1: getfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
+ // 4: ifnonnull -> 37\r
+ // 7: ldc com/enqualcomm/support/util/CustomNotification\r
+ // 9: monitorenter\r
+ // 10: aload_0\r
+ // 11: getfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
+ // 14: ifnonnull -> 25\r
+ // 17: aload_0\r
+ // 18: aload_0\r
+ // 19: invokespecial getDialogInstance : ()Lcom/enqualcomm/support/util/CustomNotification;\r
+ // 22: putfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
+ // 25: ldc com/enqualcomm/support/util/CustomNotification\r
+ // 27: monitorexit\r
+ // 28: goto -> 37\r
+ // 31: astore_1\r
+ // 32: ldc com/enqualcomm/support/util/CustomNotification\r
+ // 34: monitorexit\r
+ // 35: aload_1\r
+ // 36: athrow\r
+ // 37: aload_0\r
+ // 38: getfield mDialog : Lcom/enqualcomm/support/util/CustomNotification;\r
+ // 41: areturn\r
+ // Exception table:\r
+ // from to target type\r
+ // 10 25 31 finally\r
+ // 25 28 31 finally\r
+ // 32 35 31 finally }\r
+ return mDialog;\r
+ }\r
+ public Builder setContentMessage(String param1String) {\r
+ this.content_messgae = param1String;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setContentView(View param1View) {\r
+ this.contentView = param1View;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setLayoutViewClick(View.OnTouchListener param1OnTouchListener) {\r
+ this.viewOnTouchListener = param1OnTouchListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setMessage(int param1Int) {\r
+ this.message = (String)this.context.getText(param1Int);\r
+ return this;\r
+ }\r
+ \r
+ public Builder setMessage(String param1String) {\r
+ this.message = param1String;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setMessage(String param1String, int param1Int) {\r
+ this.message = param1String;\r
+ this.msg_count = param1Int;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setNegativeButton(int param1Int, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.negativeButtonText = (String)this.context.getText(param1Int);\r
+ this.negativeButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setNegativeButton(String param1String, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.negativeButtonText = param1String;\r
+ this.negativeButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setPositiveButton(int param1Int, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.positiveButtonText = (String)this.context.getText(param1Int);\r
+ this.positiveButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setPositiveButton(String param1String, DialogInterface.OnClickListener param1OnClickListener) {\r
+ this.positiveButtonText = param1String;\r
+ this.positiveButtonClickListener = param1OnClickListener;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setTitle(int param1Int) {\r
+ this.title = (String)this.context.getText(param1Int);\r
+ return this;\r
+ }\r
+ \r
+ public Builder setTitle(int param1Int1, int param1Int2, int param1Int3) {\r
+ this.titleImg = param1Int1;\r
+ this.title = (String)this.context.getText(param1Int2);\r
+ this.time = param1Int3;\r
+ return this;\r
+ }\r
+ \r
+ public Builder setTitle(String param1String) {\r
+ this.title = param1String;\r
+ return this;\r
+ }\r
+ }\r
+}\r
+\r
}\r
\r
public static void i(Object var0) {\r
- if (DEBUG) {\r
+ if (DEBUG && var0 !=null) {\r
String var1 = getFunctionName();\r
if (var1 != null) {\r
StringBuilder sb = new StringBuilder();\r
import android.os.SystemClock;\r
\r
\r
+import com.ic.protocol.adapter.protocolAPIHelper;\r
import com.ic.protocol.bean.StringMessage;\r
\r
import java.net.InetAddress;\r
import rx.android.schedulers.AndroidSchedulers;\r
import rx.schedulers.Schedulers;\r
\r
+import static com.ic.protocol.utils.RxSocket.SocketStatus.CONNECTED;\r
+import static com.ic.protocol.utils.RxSocket.SocketStatus.DIS_CONNECT;\r
\r
-public class NettyConnection implements Connection {\r
+\r
+public class NettyConnection implements Connection ,RxSocket.SocketConnectionListener{\r
private static long realtime_old;\r
private static final String TAG = NettyConnection.class.getSimpleName();\r
\r
ExecutorService executorService = Executors.newSingleThreadExecutor();\r
- \r
- private final ConnectionListener listener;\r
+\r
+ private protocolAPIHelper API=null;\r
+ private ConnectionListener listener=null;\r
\r
private int timeout = 60;\r
\r
public NettyConnection(ConnectionListener paramConnectionListener) {\r
this.listener = paramConnectionListener;\r
-\r
+ RxSocket.getInstance().setConnectionListener(this);\r
+ if (API == null) API=new protocolAPIHelper(\r
+ new protocolAPIHelper.CmdHandler() {\r
+ @Override\r
+ public boolean handleCmd(protocolAPIHelper.CMD_TYPE type, String cmd) {\r
+\r
+ boolean ret=true;\r
+\r
+ switch (type){\r
+ case BP00:\r
+// API.handleBP00(cmd);\r
+ handle_cmd("Link:OK",cmd);\r
+ break;\r
+ case BP01:\r
+// API.handleBP01(cmd);\r
+ handle_cmd("定位AP01",cmd);\r
+ break;\r
+ case BP03:\r
+// API.handleBP03(cmd);\r
+ handle_cmd("heart",cmd);\r
+ break;\r
+ case BP28:\r
+// API.handleBP28(cmd);\r
+ handle_cmd("语音BP28",cmd);\r
+ break;\r
+\r
+ }\r
+\r
+ return ret;\r
+\r
+ }\r
+ }\r
+ );\r
}\r
\r
private void connectImpl(String host, int port) {\r
}\r
\r
public void close() {\r
-\r
-\r
+ listener =null;\r
+ RxSocket.getInstance().setConnectionListener(null);\r
}\r
\r
public void connect(final String host, final int port) {\r
if (l - realtime_old < 3000L)\r
return; \r
realtime_old = l;\r
- Logger.i("connect1");\r
- disconnect();\r
+ Logger.i("connect1 "+host+":"+port);\r
+// disconnect();\r
this.executorService.execute(new Runnable() {\r
public void run() {\r
NettyConnection.this.connectImpl(host, port);\r
\r
\r
public boolean isServerConnected(){\r
- return (RxSocket.getInstance().getSocketStatus()==RxSocket.SocketStatus.CONNECTED)?true:false;\r
+ return (RxSocket.getInstance().getSocketStatus()== CONNECTED)?true:false;\r
}\r
public boolean sendMsg(String cmd) {\r
\r
\r
- if(!isServerConnected())\r
+ if(!isServerConnected()|| cmd==null || cmd.isEmpty())\r
{\r
return false;\r
}\r
return true;\r
}\r
\r
-\r
public int getTimeout() { return this.timeout; }\r
- \r
+\r
+\r
+ private void handle_cmd(String cmd,String msg){\r
+ if (NettyConnection.this.listener!=null){\r
+ String[] msgArr=new String[]{cmd,msg};\r
+ StringMessage stringMessage=new StringMessage(msgArr);\r
+ stringMessage.refresh(msg);\r
+ NettyConnection.this.listener.onReceive(stringMessage );\r
+ }\r
+ }\r
public void open() {\r
\r
//监听Socket的收包\r
//这里,应该去处理这个消息\r
String msg=new String(bytes);\r
log("get Msg :"+msg+" (size)" + bytes.length);\r
- if (NettyConnection.this.listener!=null){\r
- NettyConnection.this.listener.onReceive(\r
- new StringMessage(msg)\r
- );\r
- }\r
+\r
+ API.parserCmd(msg);\r
+\r
},\r
throwable -> {\r
\r
.observeOn(AndroidSchedulers.mainThread())\r
.subscribe(socketStatus -> {\r
log("socketStatus:" + socketStatus.name());\r
+ if (socketStatus.name().equals("CONNECTED")){\r
+ if (NettyConnection.this.listener!=null){\r
+ NettyConnection.this.listener.onConnectionOpen();\r
+ }\r
+ }else if (socketStatus.name().equals("DIS_CONNECT")) {\r
+ if (NettyConnection.this.listener!=null){\r
+ NettyConnection.this.listener.onConnectionClose();\r
+ }\r
+ }\r
});\r
\r
}\r
}\r
\r
public boolean sendBlocking(StringMessage paramStringMessage) {\r
- Logger.i(paramStringMessage.toString());\r
+ Logger.i(paramStringMessage.isFromCache());\r
+ sendMsg(paramStringMessage.isFromCache());\r
return true;\r
}\r
\r
public void setTimeout(int paramInt) { this.timeout = paramInt; }\r
+\r
+ @Override\r
+ public void onConnectionClose(String errMsg) {\r
+// if (NettyConnection.this.listener!=null){\r
+// NettyConnection.this.listener.onConnectionClose();\r
+// }\r
+ }\r
+\r
+ @Override\r
+ public void onConnectionOpen() {\r
+// if (NettyConnection.this.listener!=null){\r
+// NettyConnection.this.listener.onConnectionOpen();\r
+// }\r
+ }\r
}\r
\r
stringBuilder.append(",network_is_from_no_to_yes=");\r
stringBuilder.append(NetworkObservable.this.network_is_from_no_to_yes);\r
Logger.i(stringBuilder.toString());\r
+\r
+ // 如果 服务器socket没有连接,且 网络没有变化\r
if (!KeepAlive.isConnected && !NetworkObservable.this.network_is_from_no_to_yes) {\r
+\r
+ //如果网络关闭 则 检查执行下一个网络对象,此时没有转换网络状态\r
if (NetworkObservable.this.network_is_down) {\r
NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(3));\r
// NetworkObservable.access$002(NetworkObservable.this, false);\r
NetworkObservable.this.network_is_from_no_to_yes=false;\r
} else {\r
+\r
+ //如果网络已经开启,则设置网络状态从关闭到开启,并检查执行下一个网络对象\r
NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(2));\r
// NetworkObservable.access$002(NetworkObservable.this, true);\r
NetworkObservable.this.network_is_from_no_to_yes=true;\r
} \r
- } else if (NetworkObservable.this.network_is_from_no_to_yes) {\r
+ } else if (!KeepAlive.isConnected && NetworkObservable.this.network_is_from_no_to_yes) {\r
+\r
+ //如果网络转换已经成功,则只需检查执行下一个网络对象\r
NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(1));\r
} else if (KeepAlive.isConnected) {\r
+ //如果 网络服务器已经连接,则无需转换网络\r
// NetworkObservable.access$002(NetworkObservable.this, false);\r
NetworkObservable.this.network_is_from_no_to_yes=false;\r
- } \r
+ }\r
+\r
+ //所有检测都通过,就证明网络连接成功,network_is_down 自然就是false\r
// NetworkObservable.access$102(NetworkObservable.this, false);\r
NetworkObservable.this.network_is_down=false;\r
- return;\r
- } \r
- Logger.i("网络断开");\r
+\r
+ } else {\r
+ Logger.i("网络断开");\r
// NetworkObservable.access$102(NetworkObservable.this, true);\r
- NetworkObservable.this.network_is_down=true;\r
- NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(0));\r
+ NetworkObservable.this.network_is_down = true;\r
+ NetworkObservable.this.objectPublishSubject.onNext(Integer.valueOf(0));\r
+ }\r
}\r
};\r
\r
import android.view.View;\r
\r
\r
+import com.ic.protocol.R;\r
import com.ic.protocol.bean.Contact;\r
import com.ic.protocol.service.AudioService;\r
\r
import rx.functions.Action1;\r
import rx.schedulers.Schedulers;\r
\r
+import static android.os.PowerManager.ACQUIRE_CAUSES_WAKEUP;\r
+import static android.os.PowerManager.SCREEN_DIM_WAKE_LOCK;\r
+\r
public class ProcessReceiver extends BroadcastReceiver {\r
private static final int MICRO_CHAT = 2;\r
\r
}\r
\r
private void screenOn(Context paramContext) {\r
-// final PowerManager.WakeLock wakelock = ((PowerManager)paramContext.getSystemService(Context.POWER_SERVICE)).newWakeLock(268435462, "target");\r
-// wakeLock.acquire();\r
-// Observable.timer(5000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
-// public void call(Long param1Long) { wakelock.release(); }\r
-// });\r
+ final PowerManager.WakeLock wakelock = ((PowerManager)paramContext.getSystemService(Context.POWER_SERVICE)).newWakeLock(ACQUIRE_CAUSES_WAKEUP| SCREEN_DIM_WAKE_LOCK, "target");\r
+ wakelock.acquire();\r
+ Observable.timer(5000L, TimeUnit.MILLISECONDS).subscribe(new Action1<Long>() {\r
+ public void call(Long param1Long) { wakelock.release(); }\r
+ });\r
}\r
\r
public void initCustomNotification(final Context context, final Contact contact, final String content_msg, int paramInt) {\r
}\r
\r
public void initNotification(Contact paramContact, Context paramContext) {\r
-// String str = paramContact.name;\r
-// Uri uri = RingtoneManager.getDefaultUri(2);\r
-// NotificationCompat.Builder builder = (new NotificationCompat.Builder(paramContext)).setSmallIcon(2131165361).setContentTitle(paramContext.getString(2131624065)).setWhen(System.currentTimeMillis()).setAutoCancel(true);\r
-// StringBuilder stringBuilder = new StringBuilder();\r
-// stringBuilder.append(paramContext.getString(2131624074));\r
-// stringBuilder.append(" ");\r
-// stringBuilder.append(str);\r
-// stringBuilder.append(paramContext.getString(2131624075));\r
-// Notification notification = builder.setContentText(stringBuilder.toString()).setTicker(paramContext.getString(2131624069)).setSound(uri).build();\r
-// this.mNotificationManager = (NotificationManager)paramContext.getSystemService("notification");\r
-// this.mNotificationManager.notify(1, notification);\r
+ String str = paramContact.name;\r
+ Uri uri = RingtoneManager.getDefaultUri(2);\r
+ NotificationCompat.Builder builder = (new NotificationCompat.Builder(paramContext)).setSmallIcon(R.drawable.toast_error).setContentTitle(paramContext.getString(R.string.app_name)).setWhen(System.currentTimeMillis()).setAutoCancel(true);\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append(paramContext.getString(R.string.app_name));\r
+ stringBuilder.append(" ");\r
+ stringBuilder.append(str);\r
+ stringBuilder.append(paramContext.getString(R.string.app_name));\r
+ Notification notification = builder.setContentText(stringBuilder.toString()).setTicker(paramContext.getString(R.string.app_name)).setSound(uri).build();\r
+ this.mNotificationManager = (NotificationManager)paramContext.getSystemService(Context.NOTIFICATION_SERVICE);\r
+ this.mNotificationManager.notify(1, notification);\r
}\r
\r
public void onReceive(Context paramContext, Intent paramIntent) {\r
-// Contact contact;\r
-// String str = paramIntent.getAction();\r
-// StringBuilder stringBuilder = new StringBuilder();\r
-// stringBuilder.append("action==");\r
-// stringBuilder.append(str);\r
-// Logger.i(stringBuilder.toString());\r
-// if ("com.enqualcomm.support.ACTION_STEP_COUNT_ALARM".equals(str)) {\r
+ Contact contact;\r
+ String str = paramIntent.getAction();\r
+ StringBuilder stringBuilder = new StringBuilder();\r
+ stringBuilder.append("action==");\r
+ stringBuilder.append(str);\r
+ Logger.i(stringBuilder.toString());\r
+ if ("com.enqualcomm.support.ACTION_STEP_COUNT_ALARM".equals(str)) {\r
// EqcAlgorithmNative.native_EqcAlgorithm_Gsensor_clear_step();\r
-// AlarmHelper.setCleanStepCountAlarm(paramContext, 23, 59, "com.enqualcomm.support.ACTION_STEP_COUNT_ALARM");\r
-// return;\r
-// }\r
-// if ("com.enqualcomm.imessage.RESUME_ACTION".equals(str)) {\r
-// SharPreferenceUtil.setPrefBoolean(paramContext, "key_is_resume", paramIntent.getBooleanExtra("is_resume", false));\r
-// return;\r
-// }\r
-// if ("com.enqualcomm.support.DIALOG".equals(str)) {\r
-// contact = (Contact)paramIntent.getParcelableExtra("contact");\r
-// SharPreferenceUtil.getPrefBoolean(paramContext, "key_is_resume", false);\r
-// boolean bool = SharPreferenceUtil.getPrefBoolean(paramContext, "KEY_ISSILENCE", false);\r
-// if (contact != null && !bool) {\r
-// if (!DeviceInfoUtil.isTopActivity(paramContext)) {\r
-// initMyDialog(paramContext, contact, 1);\r
-// playNotificationVoice(paramContext);\r
-// }\r
-// screenOn(paramContext);\r
-// return;\r
-// }\r
-// } else if ("com.enqualcomm.imessage.SOS_ACTION".equals(str)) {\r
-// if (contact.getIntExtra("sos_end", 0) == 0) {\r
+ AlarmHelper.setCleanStepCountAlarm(paramContext, 23, 59, "com.enqualcomm.support.ACTION_STEP_COUNT_ALARM");\r
+ return;\r
+ }\r
+ if ("com.enqualcomm.imessage.RESUME_ACTION".equals(str)) {\r
+ SharPreferenceUtil.setPrefBoolean(paramContext, "key_is_resume", paramIntent.getBooleanExtra("is_resume", false));\r
+ return;\r
+ }\r
+ if ("com.enqualcomm.support.DIALOG".equals(str)) {\r
+ contact = (Contact)paramIntent.getParcelableExtra("contact");\r
+ SharPreferenceUtil.getPrefBoolean(paramContext, "key_is_resume", false);\r
+ boolean bool = SharPreferenceUtil.getPrefBoolean(paramContext, "KEY_ISSILENCE", false);\r
+ if (contact != null && !bool) {\r
+ if (!DeviceInfoUtil.isTopActivity(paramContext)) {\r
+ initMyDialog(paramContext, contact, 1);\r
+ playNotificationVoice(paramContext);\r
+ }\r
+ screenOn(paramContext);\r
+ return;\r
+ }\r
+ } else if ("com.enqualcomm.imessage.SOS_ACTION".equals(str)) {\r
+ if (paramIntent.getIntExtra("sos_end", 0) == 0) {\r
// EqcAlgorithmNative.native_EqcAlgorithmMethod3(8);\r
-// sendStheartRateBroadcast(paramContext, "com.eqc.heartrate.action.SILENT_START", 3);\r
-// return;\r
-// }\r
-// } else {\r
-// String str1;\r
-// if ("com.enqualcomm.support.ACTION_REMOTE_CAMERA".equals(contact.getAction())) {\r
-// str1 = contact.getStringExtra("key_remote_number");\r
-// (new CameraUtil(paramContext)).getPictur(str1);\r
-// return;\r
-// }\r
-// if ("com.enqualcomm.support.CloseUnreadMsg".equals(str1.getAction()) || "android.intent.action.BATTERY_LOW".equals(str1.getAction())) {\r
+ sendStheartRateBroadcast(paramContext, "com.eqc.heartrate.action.SILENT_START", 3);\r
+ return;\r
+ }\r
+ } else {\r
+ String str1;\r
+ if ("com.enqualcomm.support.ACTION_REMOTE_CAMERA".equals(paramIntent.getAction())) {\r
+ str1 = paramIntent.getStringExtra("key_remote_number");\r
+ (new CameraUtil(paramContext)).getPictur(str1);\r
+ return;\r
+ }\r
+ if ("com.enqualcomm.support.CloseUnreadMsg".equals(paramIntent.getAction()) || "android.intent.action.BATTERY_LOW".equals(paramIntent.getAction())) {\r
// if (mCustomDialog != null && mCustomDialog.isShowing())\r
// mCustomDialog.dismiss();\r
// if (this.mCustomNotification != null && this.mCustomNotification.isShowing())\r
// this.mCustomNotification.dismiss();\r
-// return;\r
-// }\r
-// if ("com.enqualcomm.support.ACTION_MISSED_CALL_GET".equals(str)) {\r
-// Contact contact1 = (Contact)str1.getParcelableExtra("contact");\r
-// contact1.extra = str1.getStringExtra("date");\r
-// boolean bool = SharPreferenceUtil.getPrefBoolean(paramContext, "KEY_ISSILENCE", false);\r
-// if (contact1 != null && !bool) {\r
-// initMyDialog(paramContext, contact1, 2);\r
-// playNotificationVoice(paramContext);\r
-// screenOn(paramContext);\r
-// return;\r
-// }\r
-// }\r
-// }\r
+ return;\r
+ }\r
+ if ("com.enqualcomm.support.ACTION_MISSED_CALL_GET".equals(str)) {\r
+ Contact contact1 = (Contact)paramIntent.getParcelableExtra("contact");\r
+ contact1.extra = paramIntent.getStringExtra("date");\r
+ boolean bool = SharPreferenceUtil.getPrefBoolean(paramContext, "KEY_ISSILENCE", false);\r
+ if (contact1 != null && !bool) {\r
+ initMyDialog(paramContext, contact1, 2);\r
+ playNotificationVoice(paramContext);\r
+ screenOn(paramContext);\r
+ return;\r
+ }\r
+ }\r
+ }\r
}\r
\r
public void sendStheartRateBroadcast(Context paramContext, String paramString, int paramInt) {\r
private ReadThread readThread = null;
private boolean isReadThreadAlive = true;
private SocketReconnectCallback socketReconnectCallback = null;
+ private SocketConnectionListener conectionListener = null;
/* 方法
* */
return connectStatus;
}
+ public void setConnectionListener(SocketConnectionListener callback){
+ conectionListener=callback;
+ }
/**
* 建立Socket连接,只是尝试建立一次
* @param ip IP or 域名
isReadThreadAlive = true;
readThread = new ReadThread(ip,port);
readThread.start();
+
socketReconnectCallback = new SocketReconnectCallback() {
@Override
public void onSuccess() {
- LogUtils.i(OpenLog,TAG,"connectRx:"+"CONNECTED");
+ LogUtils.i(OpenLog, TAG, "connectRx:" + "CONNECTED");
socketStatus = SocketStatus.CONNECTED;
subscriber.onNext(true);
subscriber.onCompleted();
@Override
public void onFail(String msg) {
- LogUtils.i(OpenLog,TAG,"connectRx:"+msg);
+ LogUtils.i(OpenLog, TAG, "connectRx:" + msg);
subscriber.onNext(false);
subscriber.onCompleted();
}
};
+
}
})
.subscribeOn(Schedulers.newThread())
LogUtils.e(OpenLog, TAG, "ReadThread:init:" + e.getMessage());
if (socketReconnectCallback!=null)
socketReconnectCallback.onFail("SocketConnectFail1");
+
+// if( conectionListener !=null) {
+// conectionListener.onConnectionClose("SocketConnectFail");
+// }
}
}
//读取
socketChannel.register(selector, SelectionKey.OP_READ);
if (socketReconnectCallback!=null)
socketReconnectCallback.onSuccess();
+
+ if( conectionListener !=null) {
+ conectionListener.onConnectionOpen();
+ }
} catch (Exception e) {
isReadThreadAlive = false;
socketStatus = SocketStatus.DIS_CONNECT;
LogUtils.e(OpenLog, TAG, "ReadThread:finish:" + e.getMessage());
if (socketReconnectCallback!=null)
socketReconnectCallback.onFail("SocketConnectFail2");
+
+// if( conectionListener !=null) {
+// conectionListener.onConnectionClose("SocketConnectFail2");
+// }
}
}
} else if (key.isReadable()) {
connectStatus.onNext(SocketStatus.DIS_CONNECT);
if (socketReconnectCallback!=null)
socketReconnectCallback.onFail("SocketConnectFail3");
+
+// if( conectionListener !=null) {
+// conectionListener.onConnectionClose("SocketConnectFail3");
+// }
} else {
LogUtils.i(OpenLog, TAG, "readSubject:msg!"+ "length:" + length);
byte[] bytes = new byte[length];
LogUtils.e(OpenLog, TAG, "ReadThread:read:" + e.getMessage());
if (socketReconnectCallback!=null)
socketReconnectCallback.onFail("SocketConnectFail4");
+
+// if( conectionListener !=null) {
+// conectionListener.onConnectionClose("SocketConnectFail4");
+// }
}
}
}
void onSuccess();
void onFail(String msg);
}
+
+ public interface SocketConnectionListener {
+ void onConnectionClose(String errMsg);
+
+ void onConnectionOpen();
+ }
}
release {\r
minifyEnabled false\r
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'\r
+ debuggable = false\r
+ }\r
+ compileOptions {\r
}\r
}\r
}\r