Commit 689df72c17a578e7a271b42804f0d11fecd5e7a1

Authored by 常守达
1 parent 3921ac0c

feat(bridge): 接口兼容

... ... @@ -2,6 +2,7 @@ package com.doublefeel.app.native
import com.doublefeel.app.MainActivity
import com.doublefeel.app.pigeon.HealthActivityTargetData
import com.doublefeel.app.pigeon.HealthAuthorization
import com.doublefeel.app.pigeon.HealthKitHostApi
import com.doublefeel.app.pigeon.HealthSleepUploadDataPoint
import com.doublefeel.app.pigeon.HealthUploadDataPoint
... ... @@ -12,15 +13,9 @@ class HealthKitHostApiImpl(
) : HealthKitHostApi {
override fun checkHealthAppAuthorization(callback: (Result<Boolean>) -> Unit) {
}
override fun getHealthServerAuthUrl(callback: (Result<String>) -> Unit) {
}
override fun requestHealthClientAuthorization(): Boolean {
return HuaweiHealthBridge.requestClientAuthorization(activity)
}
override fun cancelHealthAppAuthorization(): Boolean {
return HuaweiHealthBridge.cancelHealthAppAuthorization(activity)
... ... @@ -34,12 +29,19 @@ class HealthKitHostApiImpl(
)
}
override fun checkHealthAppAuthorization(callback: (Result<HealthAuthorization>) -> Unit) {
}
override fun requestHealthClientAuthorization(callback: (Result<Boolean>) -> Unit) {
}
override fun fetchHrvData(
startTime: Long,
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchHeartRateData(
... ... @@ -47,7 +49,6 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchWalkingHeartRateData(
... ... @@ -55,7 +56,6 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchRestingHeartRateData(
... ... @@ -63,7 +63,6 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchSleepingHeartRateData(
... ... @@ -71,7 +70,6 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchOxygenSaturationData(
... ... @@ -79,7 +77,6 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchActiveEnergyData(
... ... @@ -87,7 +84,6 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchExerciseData(
... ... @@ -95,7 +91,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchStandData(
... ... @@ -103,7 +99,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchStepCountData(
... ... @@ -111,7 +107,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchSleepData(
... ... @@ -119,7 +115,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthSleepUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchSleepingWristTemperatureData(
... ... @@ -127,7 +123,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchRespiratoryRateData(
... ... @@ -135,7 +131,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchIrregularHeartRhythmData(
... ... @@ -143,7 +139,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<List<HealthUploadDataPoint>>) -> Unit
) {
TODO("Not yet implemented")
}
override fun fetchActivityTargetData(
... ... @@ -151,7 +147,7 @@ class HealthKitHostApiImpl(
endTime: Long,
callback: (Result<HealthActivityTargetData?>) -> Unit
) {
TODO("Not yet implemented")
}
}
... ...
... ... @@ -4,6 +4,8 @@ import android.content.pm.PackageManager
import android.content.res.Resources
import android.os.Build
import android.webkit.WebSettings
import com.doublefeel.app.pigeon.platform.AppleProductInfo
import com.doublefeel.app.pigeon.platform.AppleProductPaymentResult
import com.doublefeel.app.pigeon.platform.AppleSignInModel
import com.doublefeel.app.pigeon.platform.PlatformHostApi
import kotlin.math.max
... ... @@ -56,7 +58,27 @@ class PlatformHostApiImpl(private val application: android.app.Application) : Pl
return "${systemUa.trim()} $customAgent".trim()
}
override fun updateLoginInfo(jsonString: String, baseUrl: String) {
}
override fun requestAppleSignIn(callback: (Result<AppleSignInModel?>) -> Unit) {
}
override fun requestAppleProductInfo(
productId: String,
baseUnit: Long,
callback: (Result<AppleProductInfo?>) -> Unit
) {
}
override fun performApplePayment(
productId: String,
uuid: String,
callback: (Result<AppleProductPaymentResult?>) -> Unit
) {
}
}
... ...
... ... @@ -116,25 +116,27 @@ class TodayController extends GetxController {
final hrvAnnotations = <HrvAnnotation>[].obs;
Future<void> requestHealthAuthorization() async {
try {
final result = await _hostApi.checkHealthAppAuthorization();
print("checkHealthAppAuthorization : $result");
if (result.status == 0) {
bool success = await _hostApi.requestHealthClientAuthorization();
print("requestHealthClientAuthorization : $success");
if (success) {
_performDataUpload();
} else {
Get.to(NoHealthDataPage(
onRefresh: _performDataUpload,
));
if (GetPlatform.isIOS) {
try {
final result = await _hostApi.checkHealthAppAuthorization();
print("checkHealthAppAuthorization : $result");
if (result.status == 0) {
bool success = await _hostApi.requestHealthClientAuthorization();
print("requestHealthClientAuthorization : $success");
if (success) {
_performDataUpload();
} else {
Get.to(NoHealthDataPage(
onRefresh: _performDataUpload,
));
}
return;
}
return;
}
Get.to(NoHealthDataPage(
onRefresh: _performDataUpload,
));
} catch (e) {}
Get.to(NoHealthDataPage(
onRefresh: _performDataUpload,
));
} catch (e) {}
}
}
@override
... ...