Articles of react native

在构建时自动添加React-Native不必要的Android用户权限?

在构建android apk时,似乎读/写外部存储和读取手机状态权限会自动添加到清单中。 所有React Native Android应用程序都需要这些吗? 有没有办法删除这些权限? 查看build / output / logs / manifest-merger-debug-report.txt,我看到: android:uses-permission#android.permission.READ_EXTERNAL_STORAGE IMPLIED from `/***/android/app/src/main/AndroidManifest.xml:1:1-22:12 reason: org.webkit.android_jsc` requested WRITE_EXTERNAL_STORAGE 如果我从Play商店安装应用程序,如果我不使用它们,我会看到请求这些权限,这感觉很奇怪。

Facebook Sdk尚未初始化FacebookSdk.sdkInitialize()

嘿,我知道之前有人问过这个,但没有一个解决方案似乎有所帮助。 我在我的应用程序中首次使用Facebook SDK。 我尝试过的: 我曾尝试过在互联网上发现的大部分内容,但没有得到任何关于此的内容。 这是我的MainActivity.java: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); FacebookSdk.sdkInitialize(getApplicationContext()); } } 这是My Activitymain.xml: 看我的Logcat : 05-13 16:30:39.332: E/AndroidRuntime(10264): Caused by: The SDK has not been initialized, make sure to call FacebookSdk.sdkInitialize() first.

React Native错误:元素types无效:期望字符串或类/函数但得到:object

我收到此错误,我在修复此问题时遇到了很多麻烦。 我在这里尝试做的是有3个不同的屏幕,并有一个导航到每个屏幕的tabbar。 这是我的索引: import React, { Component } from ‘react’; import { AppRegistry, Navigator, StyleSheet, View, Text } from ‘react-native’; import Nav from ‘./app/components/Nav’; import Screen from ‘./app/Screen’; import Tabs from ‘react-native-tabs’ import SwitchView from ‘./SwitchView’; class Proj extends Component { constructor(props){ super(props); } render(){ var x = “FeedView”; return( {x = el.props.name}}> First Second […]

在React Native应用程序中调试WebView

我有一个React Native App,它使用WebView从资产中呈现HTML页面。 该页面有一些javascript进行一些处理。 问题是我无法从Web视图中看到console.log语句。 我尝试过Chrome 远程调试WebViews 这是代码的样子。 请注意,对于Android,我正在尝试提供一些本机道具来启用调试。 import React from ‘react’; import Expo from ‘expo’; import { WebView } from ‘react-native’; export default class App extends React.Component { render() { const htmlURL = Expo.Asset.fromModule(require(‘./assets/index.html’)).uri; return ( ); } } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: ‘#fff’, alignItems: ‘center’, justifyContent: ‘center’, […]

react-native android fontFamily不生效

问题1: 我为index.android.js的欢迎样式添加了fontFamily,但它没有任何效果。 fontFamily真的可以在android上运行吗? 欢迎:{fontSize:20,fontFamily:’roboto-thin’,textAlign:’center’,margin:10} 问题2: 如果fontFamily在android上工作,有没有办法从资产加载自定义字体? 或者这是一些由反应原生实现的function?

React Native:我应该使用哪种导航器?

我必须在3个月内构建一个相对较大的跨平台(iOS和Android)应用程序。 到目前为止,当涉及到React Native时,我只有NavigatorIOS经验。 虽然我从未真正遇到任何问题,但我从未见过人们推荐使用它。 其他选项是Navigator ,看起来很简单,但可能不允许很多本机UI支持? 和NavigatorExperimental我一无所知,这个名字让我担心。 我不想做任何最后一分钟的噩梦。 我计划花一个月的时间彻底学习React Native,然后花2个月的时间来构建应用程序。 这引出了我的问题:如果你必须在React Native中构建一个跨平台应用程序,你会为每个平台使用哪种导航,为什么? 任何答案或提示非常感谢。

错误types3.活动类{com.awesome_project / com.awesome_project.MainActivity}在react native(Android设备)中不存在

我使用以下命令创建了项目。 react-native init Awesome_Project 我使用以下命令启动了打包器。 react-native start 我用USB驱动器连接了我的Android手机。 我打开了另一个命令提示符并运行以下adb命令以确保只连接了一个设备。 adb devices 我已使用以下命令启动了该应用程序。 react-native run-android 我遇到了以下错误。 open: Permission denied open: Permission denied Starting: Intent { com.awesome_project/.MainActivity } Error type 3 Error: Activity class {com.awesome_project/ com.awesome_project.MainActivity} does not exist. 提前致谢。

React Native v Xamarin Forms – 选择跨平台应用程序环境

我一直在寻找Xamarin Forms来构建跨平台应用程序。 我们想要一个针对iOS,Android和Windows Phone的框架。 它似乎是一个不错的产品,但许可证成本可能会导致我们的业务模式出现问题,而Windows Phone开发的许可也不清楚。 我遇到了另一个名为React Native的框架,它声称能够构建跨平台的应用程序。 我想知道是否有人能够让我了解它的优点和缺点,特别是如果可能的话,相对于Xamarin Forms。 有一件事是它使用Javascript,它可能无法很好地扩展(无论是代码维护还是执行性能)。 但是,如果有人密切关注React,并对其有用性形成了一些客观的意见,我将不胜感激。 https://facebook.github.io/react-native/ 谢谢。

在Android上运行NodeJS的可行选项(2017年8月)

有许多旧的SO线程处理在Android上运行NodeJS。 其中大多数不再可行(JXCore)和/或提供令人困惑,过时,不完整或错误的信息。 因此,我调查了目前(截至2017年8月)可行的方法,并find了三个可能的候选人。 要在他们之间做出决定,我想知道: 这些方法之间的主要区别 每种方法的特定专业人员和骗局 可能遇到障碍,挑战和缺点 你知道其他可行的替代方案吗? 可行的方法是 : 运行包含NodeJS ( J2V8 )的V8 javascript引擎 直接使用NodeJS,嵌入为本机库( node-on-android ) 将React Native与NodeJS app-as-a-service( react-native-node )相结合 除此之外,我还find了许多相关的有趣资源: NPM在没有root的情况下直接使用Termux安装NodeJS(不适用于最终用户) LiquidCore – 原生移动微应用程序devenv(未调查,有趣的概念) dna2oslab – 有一个用于节点可执行文件的工作NodeJS构建脚本 为Android构建NodeJS – 博客提供有用的编译技巧和示例项目

如何在使用React Native时实现SSL证书固定

我需要在我的反应本机应用程序中实现SSL证书固定。 我对SSL / TLS知之甚少,更不用说固定了。 我也不是一个本地移动开发人员,虽然我了解Java并且在这个项目上学习了Objective-C足以绕过它。 我开始搜索如何执行此任务。 React Native没有实现这个吗? 不,我的初步搜索引导我查看自2016年8月2日以来未收到任何活动的提案 。 从中我了解到react-native使用的OkHttp确实支持Pinning,但是我无法将其从Javascript中删除,这不是真正的要求,而是一个加号。 在Javascript中实现它。 虽然反应似乎使用了nodejs运行时,但它更像是一个浏览器而不是节点,这意味着它不支持所有本机模块,特别是https模块,我已经在本文后面实现了证书固定。 因此无法将其带入本机反应。 我尝试使用rn-nodeify,但模块不起作用。 自从我目前正在使用RN 0.33到RN 0.35以来,这是真的。 使用phonegap插件实现 我想过使用phongape-plugin但是因为我依赖于需要反应0.32+的库我不能使用react-native-cordova-plugin 只是本地做 虽然我不是本机应用程序开发人员,但我总是可以解决它,只是时间问题。 Android有证书固定 我了解到android支持SSL Pinning但是不成功,因为看起来这种方法在Android 7之前不起作用。以及仅适用于android。 底线 我已经用尽了几个方向,并将继续寻求更多本机实现,也许可以弄清楚如何配置OkHttp和RNNetworking然后可能会回到本地反应。 但是,IOS和Android已经有任何实现或指南吗?