我想检查当设备后退按钮被击中时是否有多个屏幕在堆栈上.如果是,我想显示前一个屏幕,如果没有,我想退出应用程序.
我已经检查了一些示例,但是那些使用了BackAndroid和Navigator.但他们俩都被弃用了.BackHandler是BackAndroid的替代品.我可以使用props.navigation.goBack(null)显示上一个屏幕.
但是我无法找到用于在堆栈中查找屏幕计数的代码.我不想使用已弃用的Navigator!
navigation back-button back react-native react-native-android
在我的应用程序中,我在所有屏幕上滚动结束时都有品牌页脚(对于有滚动的屏幕)和屏幕底部静止时(无滚动).
但我面临的问题是通过具有列表的屏幕来实现这一目标.我正在使用recyclerview显示列表.我想在Recyclerview结束时显示Branding Footer,当它滚动时,它会在底部滚动时显示.使用带有页脚的Recyclerview可以实现这一点.
但是当recyclerview没有滚动时(列表中的项目很少),我希望页脚固定在屏幕的底部.
提前致谢!
我是反应本机新手并尝试权限模型。我在 AndroidManifes 中添加了以下条目
<uses-permission android:name="android.permission.READ_CONTACTS" />
Run Code Online (Sandbox Code Playgroud)
添加了以下功能
async requestCameraPermission() {
try {
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.READ_CONTACTS,
{
'title': 'Cool Photo App Camera Permission',
'message': 'Cool Photo App needs access to your camera ' +
'so you can take awesome pictures.'
}
)
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
console.log("You can use the camera")
} else {
console.log("Camera permission denied")
}
} catch (err) {
console.warn(err)
}
}
Run Code Online (Sandbox Code Playgroud)
并在构造函数中注册如下
this.requestCameraPermission = this.requestCameraPermission.bind(this);
Run Code Online (Sandbox Code Playgroud)
并称其为
componentDidMount() {
this.requestCameraPermission();
}
Run Code Online (Sandbox Code Playgroud)
我正在自动授予权限,而不会向用户弹出任何消息。如果我做错了什么或期待错误,请告诉我。
我正在处理需要在后台服务中连续获取位置更新的应用程序.我使用了它正在使用的后台粘性服务.但是,即使我已经添加了启动广播并在那里启动了服务,服务也不会在启动完成后启动.服务开始并立即被杀死.
此外,这不适用于奥利奥.应用程序关闭几分钟后服务停止,直到应用程序重新启动后才会重新启动.
我已经浏览了很多链接,博客建议使用AlarmManager/JobScheduler/JobIntentService,但没有得到满意的解决方案.因此,请建议即使在启动后也可用于在后台持续获取位置的工作策略/解决方案,并且应该在Oreo上工作.
android ×3
react-native ×2
back ×1
back-button ×1
footer ×1
location ×1
navigation ×1
permissions ×1