mirror of
https://gitee.com/openharmony/base_location
synced 2025-02-17 09:29:53 +00:00
bugfix:workrecord
Signed-off-by: 李文龙 <liwenlong22@huawei.com>
This commit is contained in:
parent
412924c4f0
commit
41c7909c5a
@ -33,6 +33,7 @@ local_base_sources = [
|
||||
"$LOCATION_COMMON_DIR/source/request.cpp",
|
||||
"$LOCATION_COMMON_DIR/source/sa_load_with_statistic.cpp",
|
||||
"$LOCATION_COMMON_DIR/source/ui_extension_ability_connection.cpp",
|
||||
"$LOCATION_COMMON_DIR/source/work_record_statistic.cpp",
|
||||
"$LOCATION_ROOT_DIR/frameworks/base_module/source/location.cpp",
|
||||
"$LOCATION_ROOT_DIR/frameworks/base_module/source/request_config.cpp",
|
||||
"$LOCATION_ROOT_DIR/frameworks/base_module/source/satellite_status.cpp",
|
||||
|
@ -23,7 +23,7 @@
|
||||
"*Location*WriteAppLocatingStateEvent*";
|
||||
"*ExecuteHookWhenAddWorkRecord*";
|
||||
"*LOCATOR_SA_LOCATION_PERMISSION_CHECK*";
|
||||
|
||||
"*WorkRecordStatistic*";
|
||||
local:
|
||||
*;
|
||||
};
|
@ -33,7 +33,6 @@ if (location_feature_with_gnss) {
|
||||
"$LOCATION_LOCATOR_ROOT/source/location_config_manager.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/subability_common.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/work_record.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/work_record_statistic.cpp",
|
||||
]
|
||||
|
||||
ohos_shared_library("lbsservice_gnss") {
|
||||
|
@ -42,7 +42,6 @@ local_base_sources = [
|
||||
"$SUBSYSTEM_DIR/location_locator/locator/source/request_manager.cpp",
|
||||
"$SUBSYSTEM_DIR/location_locator/locator/source/subability_common.cpp",
|
||||
"$SUBSYSTEM_DIR/location_locator/locator/source/work_record.cpp",
|
||||
"$SUBSYSTEM_DIR/location_locator/locator/source/work_record_statistic.cpp",
|
||||
]
|
||||
|
||||
ohos_shared_library("lbsservice_locator") {
|
||||
|
@ -1030,19 +1030,12 @@ bool LocatorAbility::NeedReportCacheLocation(const std::shared_ptr<Request>& req
|
||||
}
|
||||
callback->OnLocationReport(cacheLocation);
|
||||
PrivacyKit::StopUsingPermission(request->GetTokenId(), ACCESS_APPROXIMATELY_LOCATION);
|
||||
if (locatorHandler_ != nullptr &&
|
||||
locatorHandler_->SendHighPriorityEvent(EVENT_UPDATE_LASTLOCATION_REQUESTNUM, 0, 1)) {
|
||||
LBSLOGD(LOCATOR, "%{public}s: EVENT_UPDATE_LASTLOCATION_REQUESTNUM Send Success", __func__);
|
||||
}
|
||||
UpdateLastLocationRequestNum();
|
||||
return true;
|
||||
}
|
||||
} else if (!IsSingleRequest(request->GetRequestConfig()) && IsCacheVaildScenario(request->GetRequestConfig())) {
|
||||
auto cacheLocation = reportManager_->GetCacheLocation(request);
|
||||
if (cacheLocation != nullptr && callback != nullptr) {
|
||||
auto workRecordStatistic = WorkRecordStatistic::GetInstance();
|
||||
if (!workRecordStatistic->Update("CacheLocation", 1)) {
|
||||
LBSLOGE(LOCATOR, "%{public}s line:%{public}d workRecordStatistic::Update failed", __func__, __LINE__);
|
||||
}
|
||||
// add location permission using record
|
||||
int ret = UpdatePermissionUsedRecord(request->GetTokenId(), ACCESS_APPROXIMATELY_LOCATION,
|
||||
request->GetPermUsedType(), 1, 0);
|
||||
@ -1096,10 +1089,6 @@ LocationErrCode LocatorAbility::GetCacheLocation(std::unique_ptr<Location>& loc,
|
||||
return ERRCODE_SERVICE_UNAVAILABLE;
|
||||
}
|
||||
auto lastLocation = reportManager_->GetLastLocation();
|
||||
if (locatorHandler_ != nullptr &&
|
||||
locatorHandler_->SendHighPriorityEvent(EVENT_UPDATE_LASTLOCATION_REQUESTNUM, 0, 1)) {
|
||||
LBSLOGD(LOCATOR, "%{public}s: EVENT_UPDATE_LASTLOCATION_REQUESTNUM Send Success", __func__);
|
||||
}
|
||||
std::unique_ptr<RequestConfig> requestConfig = std::make_unique<RequestConfig>();
|
||||
sptr<ILocatorCallback> callback;
|
||||
std::shared_ptr<Request> request = std::make_shared<Request>(requestConfig, callback, identity);
|
||||
@ -1839,12 +1828,10 @@ void LocatorHandler::GetCachedLocationSuccess(const AppExecFwk::InnerEvent::Poin
|
||||
Security::AccessToken::AccessTokenKit::GetPermissionUsedType(tokenId, ACCESS_APPROXIMATELY_LOCATION);
|
||||
auto locatorAbility = LocatorAbility::GetInstance();
|
||||
int ret;
|
||||
if (locatorAbility != nullptr) {
|
||||
locatorAbility->UpdateLastLocationRequestNum();
|
||||
ret = locatorAbility->UpdatePermissionUsedRecord(tokenId, ACCESS_APPROXIMATELY_LOCATION,
|
||||
static_cast<int>(type), 1, 0);
|
||||
LBSLOGD(LOCATOR, "UpdatePermissionUsedRecord, ret=%{public}d", ret);
|
||||
}
|
||||
locatorAbility->UpdateLastLocationRequestNum();
|
||||
ret = locatorAbility->UpdatePermissionUsedRecord(tokenId, ACCESS_APPROXIMATELY_LOCATION,
|
||||
static_cast<int>(type), 1, 0);
|
||||
LBSLOGD(LOCATOR, "UpdatePermissionUsedRecord, ret=%{public}d", ret);
|
||||
ret = PrivacyKit::StopUsingPermission(tokenId, ACCESS_APPROXIMATELY_LOCATION);
|
||||
LBSLOGD(LOCATOR, "StopUsingPermission, ret=%{public}d", ret);
|
||||
}
|
||||
@ -1860,12 +1847,10 @@ void LocatorHandler::GetCachedLocationFailed(const AppExecFwk::InnerEvent::Point
|
||||
Security::AccessToken::AccessTokenKit::GetPermissionUsedType(tokenId, ACCESS_APPROXIMATELY_LOCATION);
|
||||
auto locatorAbility = LocatorAbility::GetInstance();
|
||||
int ret;
|
||||
if (locatorAbility != nullptr) {
|
||||
locatorAbility->UpdateLastLocationRequestNum();
|
||||
ret = locatorAbility->UpdatePermissionUsedRecord(tokenId, ACCESS_APPROXIMATELY_LOCATION,
|
||||
static_cast<int>(type), 0, 1);
|
||||
LBSLOGD(LOCATOR, "UpdatePermissionUsedRecord, ret=%{public}d", ret);
|
||||
}
|
||||
locatorAbility->UpdateLastLocationRequestNum();
|
||||
ret = locatorAbility->UpdatePermissionUsedRecord(tokenId, ACCESS_APPROXIMATELY_LOCATION,
|
||||
static_cast<int>(type), 0, 1);
|
||||
LBSLOGD(LOCATOR, "UpdatePermissionUsedRecord, ret=%{public}d", ret);
|
||||
ret = PrivacyKit::StopUsingPermission(tokenId, ACCESS_APPROXIMATELY_LOCATION);
|
||||
LBSLOGD(LOCATOR, "StopUsingPermission, ret=%{public}d", ret);
|
||||
}
|
||||
|
@ -18,7 +18,6 @@ local_base_sources = [
|
||||
"$LOCATION_LOCATOR_ROOT/source/location_config_manager.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/subability_common.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/work_record.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/work_record_statistic.cpp",
|
||||
"$LOCATION_NETWORK_ROOT/source/network_ability.cpp",
|
||||
"$LOCATION_NETWORK_ROOT/source/network_ability_skeleton.cpp",
|
||||
"$LOCATION_NETWORK_ROOT/source/network_callback_host.cpp",
|
||||
|
@ -17,7 +17,6 @@ import("//build/ohos.gni")
|
||||
local_base_sources = [
|
||||
"$LOCATION_LOCATOR_ROOT/source/subability_common.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/work_record.cpp",
|
||||
"$LOCATION_LOCATOR_ROOT/source/work_record_statistic.cpp",
|
||||
"$LOCATION_PASSIVE_ROOT/source/passive_ability.cpp",
|
||||
"$LOCATION_PASSIVE_ROOT/source/passive_ability_skeleton.cpp",
|
||||
]
|
||||
|
Loading…
x
Reference in New Issue
Block a user