Web Analytics
跳到主要内容

链接 (Linking)

React Native 0.68+

从 React Native v0.68 及以上版本开始,通过 Autolinking 实现自动链接。无需手动链接。

iOS

安装完成后,进入 ios 目录并安装 CocoaPods 依赖:

cd ios && pod install

Android

无需额外步骤。库将在构建过程中自动链接。


已弃用 (Deprecated)

不再支持

以下章节仅适用于旧版本。如果您使用的是 React Native 0.68+react-native-screenguard v1.0.8+,可以跳过整个章节。

React Native 0.59 及以下 (手动链接)
v2.0.0+ 不再支持

React Native 0.59 及以下版本在 v2.0.0 中不再受支持。请升级到 React Native 0.68+ 以使用最新版本。

iOS 手动链接

  1. 在 Xcode 中,右键点击项目导航器中的 Libraries
  2. 选择 Add Files to [您的项目名称]
  3. 导航到 node_modules/react-native-screenguard 并添加 ScreenGuard.xcodeproj
  4. 在导航器中选择您的项目,转到 Build PhasesLink Binary With Libraries
  5. 添加 libScreenguard.a

Android 手动链接

  1. 打开 android/app/src/main/java/[...]/MainActivity.java
import com.screenguard.ScreenGuardPackage; // 添加此导入

// 添加到 getPackages() 方法中:
new ScreenGuardPackage()
  1. 添加到 android/settings.gradle
include ':react-native-screenguard'
project(':react-native-screenguard').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-screenguard/android')
  1. android/app/build.gradle 的 dependencies 中添加:
implementation project(':react-native-screenguard')
Android 安装后配置 (v1.0.6 及以下)
v1.0.8+ 无需配置

v1.0.8 开始,Activity 已在库的 AndroidManifest.xml 中自动声明,并在构建时合并。此步骤仅对 v1.0.6 及以下版本是必需的。

对于 v1.0.6 及以下版本,您必须在 AndroidManifest.xml 中手动声明 ScreenGuardColorActivity,以启用背景颜色和模糊效果。

第 1 步:更新 AndroidManifest.xml

打开 android/app/src/main/AndroidManifest.xml 并添加 Activity:

<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application ...>
<activity android:name=".MainActivity" ...>
...
</activity>

<!-- 添加此 Activity -->
<activity
android:name="com.screenguard.ScreenGuardColorActivity"
android:theme="@style/Theme.AppCompat.Translucent"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|screenSize|smallestScreenSize|uiMode"
android:windowSoftInputMode="stateAlwaysVisible|adjustResize"
android:exported="false"
/>
</application>
</manifest>

第 2 步:添加透明主题

打开 android/app/src/main/res/values/styles.xml 并添加主题:

<resources>
<style name="AppTheme">
<!-- 您现有的主题 -->
</style>

<!-- 添加此主题 -->
<style name="Theme.AppCompat.Translucent">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@null</item>
<item name="android:windowSoftInputMode">adjustResize</item>
</style>
</resources>