Jee*_*eva 6 android android-jetpack-compose
我正在从其他应用程序接收一些文本,例如,如果人们从 YouTube 应用程序共享视频,我的应用程序将显示在可共享列表中。如果他们选择我的应用程序,我想获取文本内容。
我有一个像这样的意图过滤器。
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:host="*" android:mimeType="text/*" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
onNewIntent我可以使用活动中的方法访问数据。
override fun onNewIntent(intent: Intent?) {
Log.d(TAG, intent?.getStringExtra(Intent.EXTRA_TEXT).toString())
super.onNewIntent(intent)
}
Run Code Online (Sandbox Code Playgroud)
但我想访问可组合函数内的文本,我该怎么做?
小智 7
我认为在该方法中使用一次性效果setContent应该可以完成工作
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
DisposableEffect(Unit) {
val listener = Consumer<Intent> {
// logic here
}
addOnNewIntentListener(listener)
onDispose { removeOnNewIntentListener(listener) }
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2513 次 |
| 最近记录: |