不是让 RN 认为它是电视的方法,即使它不是(修改 uiMode?)
Posted
技术标签:
【中文标题】不是让 RN 认为它是电视的方法,即使它不是(修改 uiMode?)【英文标题】:Not hacky way to make RN think it’s TV even when it’s not (modifying uiMode?) 【发布时间】:2021-11-13 12:22:00 【问题描述】:所以我需要我的应用在 AOSP android 盒子上像 Android TV 一样运行。作为 POC,我尝试从
更改 node_modules/react-native/Libraries/Utilities/Platform.android.js 中的函数get isTV(): boolean
return this.constants.uiMode === 'tv';
到
get isTV(): boolean
return true;
,
它在盒子上运行良好。不过,我想要一种不那么老套的方法。该解决方案似乎能够将 uiMode 更改为 tv,但我发现它不是您可以在 expo 的 app.json 中更改的参数,也不是从 JS 代码中可以更改的参数。有没有办法做到这一点,或者我没想到的另一种方法可以在不直接更改 RN 代码的情况下达到同样的结果?
先谢谢了。
【问题讨论】:
【参考方案1】:所以,我没有找到任何方法将其实际更改为参数,但我最终使用patch-package 记录我对 RN 的编辑并避免分叉的麻烦。
【讨论】:
以上是关于不是让 RN 认为它是电视的方法,即使它不是(修改 uiMode?)的主要内容,如果未能解决你的问题,请参考以下文章
如果它是私有的,是不是可以从 main 调用方法?如果没有,怎么可能?
TypeError: role.setPermissions 不是一个函数,即使 TypeScript 说它是
有没有一种简单的方法可以让 emscripten 发出 wasm 而不是修改它的名字?