伙计们,我正在尝试在我的 React Native 应用程序中使用“react-native-manage-wallpaper”库来更改壁纸...
但我收到此错误:
TypeError: null is not an object (evaluating'_reactNative.NativeModules.ManageWallpaper.setWallpaper')
这是用于更改壁纸的功能
const callback = res => {
console.log('Response: ', res);
};
const changeWallpaper = () => {
ManageWallpaper.setWallpaper(
{
uri: 'https://i.pinimg.com/originals/76/5e/1d/765e1dc8cb1cc115fb3b0b39a895fdeb.jpg',
},
callback,
TYPE.HOME,
);
};
到底是什么导致了错误?
我也面临着同样的问题。但在摆脱了麻烦之后,我知道了一个名为 @ajaybhatia/react-native-wallpaper-manager 的软件包
https://www.npmjs.com/package/@ajaybhatia/react-native-wallpaper-manager npm install --save @ajaybhatia/react-native-wallpaper-manager
import WallPaperManager from '@ajaybhatia/react-native-wallpaper-manager';
WallPaperManager.setWallpaper({uri: 'http://example.com/test.png', screen: 'lock/home/both'}, res => console.log(res));
如果您使用expo,那么expo go没有原生模块。所以首先你必须使用这个命令构建你的应用程序
eas build --profile development --platform android
如果你不使用expo,你可以考虑使用这个最新的库: https://www.npmjs.com/package/react-native-device-wallpaper-manager