diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a76750c..96d767b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -41,9 +41,14 @@ android:theme="@style/Theme.RiderPro"> - + + + + + + ? = if (intent.action == Intent.ACTION_SEND) { + listOf(intent.getParcelableExtra(Intent.EXTRA_STREAM)!!) + } else { + intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM) + } + NewPostViewModel.asNewPostWithImageUris(imageUris!!.map { it.toString() }) + navController.navigate(NavigationRoute.NewPost.route) + + } } } diff --git a/app/src/main/java/com/aiosman/riderpro/ui/favourite/FavouriteListViewModel.kt b/app/src/main/java/com/aiosman/riderpro/ui/favourite/FavouriteListViewModel.kt index 975751a..44c6a1b 100644 --- a/app/src/main/java/com/aiosman/riderpro/ui/favourite/FavouriteListViewModel.kt +++ b/app/src/main/java/com/aiosman/riderpro/ui/favourite/FavouriteListViewModel.kt @@ -9,6 +9,7 @@ import androidx.paging.Pager import androidx.paging.PagingConfig import androidx.paging.PagingData import androidx.paging.cachedIn +import com.aiosman.riderpro.AppState import com.aiosman.riderpro.data.MomentService import com.aiosman.riderpro.entity.MomentEntity import com.aiosman.riderpro.entity.MomentPagingSource @@ -34,14 +35,13 @@ object FavouriteListViewModel:ViewModel() { if (force) { isLoading = true } - val profile = accountService.getMyAccountProfile() isLoading = false Pager( config = PagingConfig(pageSize = 5, enablePlaceholders = false), pagingSourceFactory = { MomentPagingSource( MomentRemoteDataSource(momentService), - favoriteUserId = profile.id + favoriteUserId = AppState.UserId ) } ).flow.cachedIn(viewModelScope).collectLatest { diff --git a/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/moment/MomentViewModel.kt b/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/moment/MomentViewModel.kt index df70ac7..19f2909 100644 --- a/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/moment/MomentViewModel.kt +++ b/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/moment/MomentViewModel.kt @@ -11,6 +11,7 @@ import androidx.paging.PagingData import androidx.paging.cachedIn import androidx.paging.filter import androidx.paging.map +import com.aiosman.riderpro.AppState import com.aiosman.riderpro.data.AccountService import com.aiosman.riderpro.entity.MomentPagingSource import com.aiosman.riderpro.entity.MomentRemoteDataSource @@ -40,9 +41,8 @@ object MomentViewModel : ViewModel() { if (pullRefresh) { refreshing = true } - val profile = accountService.getMyAccountProfile() // 检查是否有动态 - val existMoments = momentService.getMoments(timelineId = profile.id, pageNumber = 1) + val existMoments = momentService.getMoments(timelineId = AppState.UserId, pageNumber = 1) if (existMoments.list.isEmpty()) { existsMoment.value = true } @@ -55,7 +55,7 @@ object MomentViewModel : ViewModel() { MomentPagingSource( MomentRemoteDataSource(momentService), // 如果没有动态,则显示热门动态 - timelineId = if (existMoments.list.isEmpty()) null else profile.id, + timelineId = if (existMoments.list.isEmpty()) null else AppState.UserId, trend = if (existMoments.list.isEmpty()) true else null ) } diff --git a/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/profile/MyProfileViewModel.kt b/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/profile/MyProfileViewModel.kt index 1d379d6..4359722 100644 --- a/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/profile/MyProfileViewModel.kt +++ b/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/profile/MyProfileViewModel.kt @@ -47,8 +47,8 @@ object MyProfileViewModel : ViewModel() { refreshing = true } firstLoad = false - profile = accountService.getMyAccountProfile() val profile = accountService.getMyAccountProfile() + this@MyProfileViewModel.profile = profile refreshing = false try { Pager( @@ -71,13 +71,11 @@ object MyProfileViewModel : ViewModel() { } suspend fun logout() { - accountService.getMyAccountProfile() AppStore.apply { token = null rememberMe = false saveData() } - } fun updateUserProfileBanner(bannerImageUrl: Uri?, context: Context) { diff --git a/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/search/DiscoverViewModel.kt b/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/search/DiscoverViewModel.kt index 4a1dc2a..d622a7e 100644 --- a/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/search/DiscoverViewModel.kt +++ b/app/src/main/java/com/aiosman/riderpro/ui/index/tabs/search/DiscoverViewModel.kt @@ -39,7 +39,6 @@ object DiscoverViewModel:ViewModel() { } fun refreshPager() { viewModelScope.launch { - val profile = accountService.getMyAccountProfile() Pager( config = PagingConfig(pageSize = 5, enablePlaceholders = false), pagingSourceFactory = { diff --git a/app/src/main/java/com/aiosman/riderpro/ui/post/NewPostViewModel.kt b/app/src/main/java/com/aiosman/riderpro/ui/post/NewPostViewModel.kt index e827171..e4e7a23 100644 --- a/app/src/main/java/com/aiosman/riderpro/ui/post/NewPostViewModel.kt +++ b/app/src/main/java/com/aiosman/riderpro/ui/post/NewPostViewModel.kt @@ -37,6 +37,13 @@ object NewPostViewModel : ViewModel() { imageUriList = listOf() relPostId = null } + fun asNewPostWithImageUris(imageUris: List) { + textContent = "" + searchPlaceAddressResult = null + modificationList = listOf() + imageUriList = imageUris + relPostId = null + } suspend fun uriToFile(context: Context, uri: Uri): File { val inputStream: InputStream? = context.contentResolver.openInputStream(uri)