小编Far*_*ABZ的帖子

在 android API29+ 中检测来电和去电

关于在an​​droid中检测来电和去电有很多问题,但它们都是旧的,而且android弃用了有用的功能,google play拒绝了我的应用程序,因为我正在使用它们。

为了检测我使用的拨出电话:

<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
Run Code Online (Sandbox Code Playgroud)

并且还收听android.intent.action.NEW_OUTGOING_CALL广播听众。

根据谷歌文档(this),我们应该使用CallRedirectionServiceand CallScreeningService。但这些服务适用于 API 29+。

那么有什么方法可以检测不弃用且不使用敏感权限的传入和传出呼叫?

如果有任何调用,我想关闭我的套接字连接,如果没有,我想重新打开它。

android android-service telephonymanager android-permissions android-broadcast

5
推荐指数
2
解决办法
2307
查看次数

如何在应用程序最小化时暂停/停止收集/发送流中的数据?

我有一个 UseCase 和远程存储库,它们在循环中返回 Flow,并且我在 ViewModel 中收集 UseCase 的结果,如下所示:

viewModelScope.launch {
    useCase.updatePeriodically().collect { result ->
        when (result.status) {
            Result.Status.ERROR -> {
                errorModel.value = result.errorModel
            }
            Result.Status.SUCCESS -> {
                items.value = result.data
            }
            Result.Status.LOADING -> {
                loading.value = true
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是当应用程序处于后台(最小化)时流程继续工作。那么我可以在应用程序在后台时暂停它并在应用程序返回前台时恢复它吗?

而且我也不想观察我视图中的数据(片段或活动)。

android viewmodel android-lifecycle kotlin-coroutines

5
推荐指数
2
解决办法
5625
查看次数

Kotlin快捷方式,用于将方法参数分配给Android Studio中的字段

在Android Studio中,当我按下 Alt + Enter 并将方法参数分配给类成员字段时,我正在处理Java类.

但是当我使用Kotlin时,没有对此功能的建议.

我可以为此创建新建议还是有任何方法为字段分配参数?

Java类建议:

java类建议

科特林班建议:

在此输入图像描述

android kotlin android-studio

3
推荐指数
1
解决办法
377
查看次数

如何将存储库注入 FirebaseMessagingService 类

我想在令牌准备好后将客户端 FCM 令牌发送到我的服务器,因此我需要 MyFirebaseMessagingService 中的用户存储库。

问题是 FirebaseMessagingService 需要默认的空构造函数。那么如何将我的 userRepo 注入 MyFirebaseMessagingService 类中?我使用 Koin 作为依赖注入

android dependency-injection kotlin firebase koin

3
推荐指数
1
解决办法
1702
查看次数

Recyclerview 和 notifydatesetchanged 直到滚动才显示项目

上周,我在回收站视图中遇到了一个奇怪的行为和新问题。Recyclerview 直到滚动才显示项目,实际上,在调试之后我知道onbindeViewHolder在调用notifyDataSetChanged().

这是我的适配器代码:

class CalendarAdapter(val viewModel: CalendarViewModel) :
RecyclerView.Adapter<RecyclerView.ViewHolder>() {
    private lateinit var items: List<RequestBookingBaseModel>

    fun setData(data: List<RequestBookingBaseModel>) {
        items = data
        notifyDataSetChanged()
    }

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
        return MyViewHolder
    }

    override fun getItemCount(): Int {
        if (::items.isInitialized) {
            return items.size
        }

        return 0
    }
}

    override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
        // do something
    }
}
Run Code Online (Sandbox Code Playgroud)

我的活动是这样的:

class CalendarFragment : BaseFragment() {
    ...
    do something
    ...

    fun showList(listOfItems : ArrayList<String>){ …
Run Code Online (Sandbox Code Playgroud)

android android-recyclerview android-constraintlayout

3
推荐指数
1
解决办法
347
查看次数

如何创建可点击的标签

我想在表单应用程序中创建一个随机可点击标签.我随机生成了一个标签,但我无法点击它.有谁能够帮我?

c# winforms c#-4.0

2
推荐指数
2
解决办法
1万
查看次数