├── .github
└── workflows
│ └── nodejs.yml
├── .gitignore
├── JCoreRN.podspec
├── LICENSE
├── README.md
├── android
├── build.gradle
├── libs
│ └── jcore-android-5.0.2.jar
└── src
│ └── main
│ ├── AndroidManifest.xml
│ └── java
│ └── cn
│ └── jiguang
│ └── plugins
│ ├── core
│ ├── JCoreModule.java
│ └── JCorePackage.java
│ └── service
│ └── JCoreModuleService.java
├── index.d.ts
├── index.js
├── ios
├── RCTJCoreModule.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcuserdata
│ │ │ ├── HuminiOS.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ │ │ └── wicked.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ ├── HuminiOS.xcuserdatad
│ │ └── xcschemes
│ │ │ ├── RCTJCoreModule.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ └── wicked.xcuserdatad
│ │ └── xcschemes
│ │ └── xcschememanagement.plist
└── RCTJCoreModule
│ ├── RCTJCoreModule.h
│ ├── RCTJCoreModule.m
│ └── jcore-ios-5.0.1.xcframework
│ ├── Info.plist
│ ├── ios-arm64
│ ├── Headers
│ │ ├── JGCOREAPI.h
│ │ └── JGInforCollectionAuth.h
│ ├── PrivacyInfo.xcprivacy
│ └── libJCore.a
│ └── ios-arm64_x86_64-simulator
│ ├── Headers
│ ├── JGCOREAPI.h
│ └── JGInforCollectionAuth.h
│ ├── PrivacyInfo.xcprivacy
│ └── libJCore.a
├── package-lock.json
└── package.json
/.github/workflows/nodejs.yml:
--------------------------------------------------------------------------------
1 | # This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
2 | # For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
3 | name: npm-publish
4 | on:
5 | push:
6 | branches:
7 | - master # Change this to your default branch
8 | jobs:
9 | npm-publish:
10 | name: npm-publish
11 | runs-on: ubuntu-latest
12 | steps:
13 | - name: Checkout repository
14 | uses: actions/checkout@master
15 | - name: Set up Node.js
16 | uses: actions/setup-node@master
17 | with:
18 | node-version: 10.0.0
19 | registry-url: https://registry.npmjs.org/
20 | - run: npm publish
21 | env: # More info about the environment variables in the README
22 | NODE_AUTH_TOKEN: ${{secrets.NPM_AUTH_TOKEN}} # You need to set this in your repo settings
23 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 |
2 | *.gradle/
3 | gradle.properties
4 | build/
5 | build-res/
6 | /*/build/
7 | *.iml
8 | *.idea/
9 | *.DS_Store
10 | *.log
11 | .qshell
12 | *.qshell
13 |
--------------------------------------------------------------------------------
/JCoreRN.podspec:
--------------------------------------------------------------------------------
1 | require 'json'
2 | pjson = JSON.parse(File.read('package.json'))
3 |
4 | Pod::Spec.new do |s|
5 |
6 | s.name = "JCoreRN"
7 | s.version = pjson["version"]
8 | s.homepage = pjson["homepage"]
9 | s.summary = pjson["description"]
10 | s.license = pjson["license"]
11 | s.author = pjson["author"]
12 |
13 | s.ios.deployment_target = '7.0'
14 |
15 | s.source = { :git => "https://github.com/jpush/jcore-react-native.git", :tag => "#{s.version}" }
16 | s.source_files = 'ios/RCTJCoreModule/*.{h,m}'
17 | s.preserve_paths = "**/*.js"
18 | s.vendored_frameworks = "ios/RCTJCoreModule/*.xcframework"
19 | s.libraries = 'z','resolv', 'sqlite3', 'c++.1'
20 | s.dependency 'React'
21 | end
22 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 极光开发者
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # JCore-React-Native
2 |
3 | ## 安装
4 |
5 | ```
6 | npm install jcore-react-native --save
7 | ```
8 |
9 |
--------------------------------------------------------------------------------
/android/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'com.android.library'
2 |
3 | def safeExtGet(prop, fallback) {
4 | rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
5 | }
6 |
7 | android {
8 | compileSdkVersion safeExtGet('compileSdkVersion', 34)
9 | namespace 'cn.jiguang.plugins.core'
10 | defaultConfig {
11 | minSdkVersion safeExtGet('minSdkVersion', 23)
12 | targetSdkVersion safeExtGet('targetSdkVersion', 34)
13 | versionCode 1
14 | versionName "1.0"
15 | }
16 | sourceSets {
17 | main {
18 | jniLibs.srcDirs = ['libs']
19 | }
20 | }
21 | }
22 |
23 | dependencies {
24 | implementation fileTree(dir: 'libs', include: ['*.jar'])
25 | implementation 'com.facebook.react:react-native:+'
26 | }
27 |
--------------------------------------------------------------------------------
/android/libs/jcore-android-5.0.2.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpush/jcore-react-native/2584a65944e3ebfcef86a0168f4229f4dbfe73eb/android/libs/jcore-android-5.0.2.jar
--------------------------------------------------------------------------------
/android/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
9 |
10 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
--------------------------------------------------------------------------------
/android/src/main/java/cn/jiguang/plugins/core/JCoreModule.java:
--------------------------------------------------------------------------------
1 |
2 | package cn.jiguang.plugins.core;
3 |
4 | import android.app.Activity;
5 | import android.app.Application;
6 | import android.os.Bundle;
7 | import android.text.TextUtils;
8 | import android.util.Log;
9 |
10 | import com.facebook.react.bridge.Arguments;
11 | import com.facebook.react.bridge.Callback;
12 | import com.facebook.react.bridge.ReactApplicationContext;
13 | import com.facebook.react.bridge.ReactContextBaseJavaModule;
14 | import com.facebook.react.bridge.ReactMethod;
15 | import com.facebook.react.bridge.ReadableArray;
16 | import com.facebook.react.bridge.ReadableMap;
17 | import com.facebook.react.bridge.WritableMap;
18 |
19 | import org.json.JSONObject;
20 |
21 | import java.util.HashSet;
22 | import java.util.Set;
23 | import cn.jiguang.api.utils.JCollectionAuth;
24 | import cn.jiguang.api.JCoreInterface;
25 |
26 | public class JCoreModule extends ReactContextBaseJavaModule {
27 |
28 | public static ReactApplicationContext reactContext;
29 |
30 |
31 | public JCoreModule(ReactApplicationContext reactApplicationContext) {
32 | super(reactContext);
33 | reactContext = reactApplicationContext;
34 | }
35 |
36 | @Override
37 | public String getName() {
38 | return "JCoreModule";
39 | }
40 |
41 | @ReactMethod
42 | public void setAuth(boolean bool){
43 | JCollectionAuth.setAuth(reactContext,bool);
44 | }
45 | @ReactMethod
46 | public void enableAutoWakeup(boolean bool) {
47 | JCollectionAuth.enableAutoWakeup(reactContext,bool);
48 | }
49 | @ReactMethod
50 | public void setCountryCode(ReadableMap readableMap){
51 | if (readableMap == null) {
52 | return;
53 | }
54 | String code = readableMap.getString("code");
55 | if (TextUtils.isEmpty(code)) {
56 | } else {
57 | JCoreInterface.setCountryCode(reactContext,code);
58 | }
59 | }
60 |
61 | @ReactMethod
62 | public void enableSDKLocalLog(ReadableMap readableMap){
63 | if (readableMap == null) {
64 | return;
65 | }
66 | boolean enable = false;
67 | if (readableMap.hasKey("enable")) {
68 | enable = readableMap.getBoolean("enable");
69 | }
70 | boolean uploadJgToServer = false;
71 | if (readableMap.hasKey("uploadJgToServer")) {
72 | uploadJgToServer = readableMap.getBoolean("uploadJgToServer");
73 | }
74 | JCoreInterface.enableSDKLocalLog(reactContext,enable,uploadJgToServer);
75 | }
76 |
77 | @ReactMethod
78 | public void readNewLogs(Callback callback) {
79 | if (callback == null) {
80 | return;
81 | }
82 | String logs = JCoreInterface.readNewLogs(reactContext);
83 | WritableMap writableMap = Arguments.createMap();
84 | writableMap.putString("logs", logs);
85 | callback.invoke(writableMap);
86 | }
87 |
88 |
89 | }
90 |
--------------------------------------------------------------------------------
/android/src/main/java/cn/jiguang/plugins/core/JCorePackage.java:
--------------------------------------------------------------------------------
1 |
2 | package cn.jiguang.plugins.core;
3 |
4 | import java.util.Arrays;
5 | import java.util.Collections;
6 | import java.util.List;
7 |
8 | import com.facebook.react.ReactPackage;
9 | import com.facebook.react.bridge.NativeModule;
10 | import com.facebook.react.bridge.ReactApplicationContext;
11 | import com.facebook.react.uimanager.ViewManager;
12 |
13 | import cn.jiguang.plugins.core.JCoreModule;
14 |
15 | public class JCorePackage implements ReactPackage {
16 |
17 | @Override
18 | public List createNativeModules(ReactApplicationContext reactContext) {
19 | return Arrays.asList(new JCoreModule(reactContext));
20 | }
21 |
22 | @Override
23 | public List createViewManagers(ReactApplicationContext reactContext) {
24 | return Collections.emptyList();
25 | }
26 |
27 | }
--------------------------------------------------------------------------------
/android/src/main/java/cn/jiguang/plugins/service/JCoreModuleService.java:
--------------------------------------------------------------------------------
1 | package cn.jiguang.plugins.service;
2 |
3 | import cn.jpush.android.service.JCommonService;
4 |
5 | public class JCoreModuleService extends JCommonService {
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/index.d.ts:
--------------------------------------------------------------------------------
1 | // 定义 JCore 类的类型声明
2 | export default class JCore {
3 | /**
4 | * 设置认证信息
5 | * @param auth 是否启用认证
6 | */
7 | static setAuth(auth: boolean): void;
8 |
9 | /**
10 | * 设置国家代码
11 | * @param params 包含国家代码的对象,字段为 { code: string }
12 | */
13 | static setCountryCode(params: { code: string }): void;
14 |
15 | /**
16 | * 启用自动唤醒功能
17 | * @param enable 是否启用自动唤醒
18 | */
19 | static enableAutoWakeup(enable: boolean): void;
20 |
21 | /**
22 | * 启用SDK本地日志,启动用SDK日志缓存本设备
23 | * @param enable 是否启用日志(true表示启用,false表示禁用)
24 | * @param uploadJgToServer 是否将日志上传到极光服务器(true表示上传,false表示不上传)
25 | */
26 | static enableSDKLocalLog(params: {enable: boolean, uploadJgToServer: boolean}): void;
27 |
28 | /**
29 | * 获取所有进程的新增SDK日志
30 | *
31 | * @param {Function} callback = (result) => {"logs":String}
32 | */
33 | static readNewLogs(callback: Callback<{ logs: string }>): void;
34 | }
35 |
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | import {
2 | DeviceEventEmitter,
3 | NativeModules,
4 | Platform
5 | } from 'react-native'
6 |
7 | const JCoreModule = NativeModules.JCoreModule
8 |
9 |
10 | export default class JCore {
11 |
12 | static setAuth(auth) {
13 | JCoreModule.setAuth(auth)
14 | }
15 | static setCountryCode(params) {
16 | if (Platform.OS == "android") {
17 | JCoreModule.setCountryCode(params)
18 | }
19 | }
20 | static enableAutoWakeup(enable) {
21 | if (Platform.OS == "android") {
22 | JCoreModule.enableAutoWakeup(enable)
23 | }
24 | }
25 |
26 | static enableSDKLocalLog(params) {
27 | if (Platform.OS == "android") {
28 | JCoreModule.enableSDKLocalLog(params)
29 | }
30 | }
31 |
32 | static readNewLogs(callback) {
33 | if (Platform.OS == "android") {
34 | JCoreModule.readNewLogs(callback)
35 | }
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 54;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 08166A7B27EC622A00C7233B /* RCTJCoreModule.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 6212E9EF1F3991D500BDF51A /* RCTJCoreModule.h */; };
11 | 6212E9F11F3991D500BDF51A /* RCTJCoreModule.m in Sources */ = {isa = PBXBuildFile; fileRef = 6212E9F01F3991D500BDF51A /* RCTJCoreModule.m */; };
12 | 624D3A3E2DB7926400C8C3C0 /* jcore-ios-5.0.1.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 624D3A3D2DB7926400C8C3C0 /* jcore-ios-5.0.1.xcframework */; };
13 | /* End PBXBuildFile section */
14 |
15 | /* Begin PBXCopyFilesBuildPhase section */
16 | 6212E9B21F3990DC00BDF51A /* CopyFiles */ = {
17 | isa = PBXCopyFilesBuildPhase;
18 | buildActionMask = 2147483647;
19 | dstPath = "include/$(PRODUCT_NAME)";
20 | dstSubfolderSpec = 16;
21 | files = (
22 | 08166A7B27EC622A00C7233B /* RCTJCoreModule.h in CopyFiles */,
23 | );
24 | runOnlyForDeploymentPostprocessing = 0;
25 | };
26 | /* End PBXCopyFilesBuildPhase section */
27 |
28 | /* Begin PBXFileReference section */
29 | 6212E9B41F3990DC00BDF51A /* libRCTJCoreModule.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libRCTJCoreModule.a; sourceTree = BUILT_PRODUCTS_DIR; };
30 | 6212E9EF1F3991D500BDF51A /* RCTJCoreModule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RCTJCoreModule.h; sourceTree = ""; };
31 | 6212E9F01F3991D500BDF51A /* RCTJCoreModule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RCTJCoreModule.m; sourceTree = ""; };
32 | 624D3A3D2DB7926400C8C3C0 /* jcore-ios-5.0.1.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = "jcore-ios-5.0.1.xcframework"; path = "RCTJCoreModule/jcore-ios-5.0.1.xcframework"; sourceTree = ""; };
33 | /* End PBXFileReference section */
34 |
35 | /* Begin PBXFrameworksBuildPhase section */
36 | 6212E9B11F3990DC00BDF51A /* Frameworks */ = {
37 | isa = PBXFrameworksBuildPhase;
38 | buildActionMask = 2147483647;
39 | files = (
40 | 624D3A3E2DB7926400C8C3C0 /* jcore-ios-5.0.1.xcframework in Frameworks */,
41 | );
42 | runOnlyForDeploymentPostprocessing = 0;
43 | };
44 | /* End PBXFrameworksBuildPhase section */
45 |
46 | /* Begin PBXGroup section */
47 | 5CE8168A22FC0295007D710C /* Frameworks */ = {
48 | isa = PBXGroup;
49 | children = (
50 | 624D3A3D2DB7926400C8C3C0 /* jcore-ios-5.0.1.xcframework */,
51 | );
52 | name = Frameworks;
53 | sourceTree = "";
54 | };
55 | 6212E9AB1F3990DC00BDF51A = {
56 | isa = PBXGroup;
57 | children = (
58 | 6212E9B61F3990DC00BDF51A /* RCTJCoreModule */,
59 | 6212E9B51F3990DC00BDF51A /* Products */,
60 | 5CE8168A22FC0295007D710C /* Frameworks */,
61 | );
62 | sourceTree = "";
63 | };
64 | 6212E9B51F3990DC00BDF51A /* Products */ = {
65 | isa = PBXGroup;
66 | children = (
67 | 6212E9B41F3990DC00BDF51A /* libRCTJCoreModule.a */,
68 | );
69 | name = Products;
70 | sourceTree = "";
71 | };
72 | 6212E9B61F3990DC00BDF51A /* RCTJCoreModule */ = {
73 | isa = PBXGroup;
74 | children = (
75 | 6212E9EF1F3991D500BDF51A /* RCTJCoreModule.h */,
76 | 6212E9F01F3991D500BDF51A /* RCTJCoreModule.m */,
77 | );
78 | path = RCTJCoreModule;
79 | sourceTree = "";
80 | };
81 | /* End PBXGroup section */
82 |
83 | /* Begin PBXNativeTarget section */
84 | 6212E9B31F3990DC00BDF51A /* RCTJCoreModule */ = {
85 | isa = PBXNativeTarget;
86 | buildConfigurationList = 6212E9BD1F3990DC00BDF51A /* Build configuration list for PBXNativeTarget "RCTJCoreModule" */;
87 | buildPhases = (
88 | 6212E9B01F3990DC00BDF51A /* Sources */,
89 | 6212E9B11F3990DC00BDF51A /* Frameworks */,
90 | 6212E9B21F3990DC00BDF51A /* CopyFiles */,
91 | );
92 | buildRules = (
93 | );
94 | dependencies = (
95 | );
96 | name = RCTJCoreModule;
97 | productName = RCTJCoreModule;
98 | productReference = 6212E9B41F3990DC00BDF51A /* libRCTJCoreModule.a */;
99 | productType = "com.apple.product-type.library.static";
100 | };
101 | /* End PBXNativeTarget section */
102 |
103 | /* Begin PBXProject section */
104 | 6212E9AC1F3990DC00BDF51A /* Project object */ = {
105 | isa = PBXProject;
106 | attributes = {
107 | LastUpgradeCheck = 0830;
108 | ORGANIZATIONNAME = HXHG;
109 | TargetAttributes = {
110 | 6212E9B31F3990DC00BDF51A = {
111 | CreatedOnToolsVersion = 8.3.3;
112 | DevelopmentTeam = RL64Y54S9V;
113 | ProvisioningStyle = Automatic;
114 | };
115 | };
116 | };
117 | buildConfigurationList = 6212E9AF1F3990DC00BDF51A /* Build configuration list for PBXProject "RCTJCoreModule" */;
118 | compatibilityVersion = "Xcode 3.2";
119 | developmentRegion = English;
120 | hasScannedForEncodings = 0;
121 | knownRegions = (
122 | English,
123 | en,
124 | );
125 | mainGroup = 6212E9AB1F3990DC00BDF51A;
126 | productRefGroup = 6212E9B51F3990DC00BDF51A /* Products */;
127 | projectDirPath = "";
128 | projectRoot = "";
129 | targets = (
130 | 6212E9B31F3990DC00BDF51A /* RCTJCoreModule */,
131 | );
132 | };
133 | /* End PBXProject section */
134 |
135 | /* Begin PBXSourcesBuildPhase section */
136 | 6212E9B01F3990DC00BDF51A /* Sources */ = {
137 | isa = PBXSourcesBuildPhase;
138 | buildActionMask = 2147483647;
139 | files = (
140 | 6212E9F11F3991D500BDF51A /* RCTJCoreModule.m in Sources */,
141 | );
142 | runOnlyForDeploymentPostprocessing = 0;
143 | };
144 | /* End PBXSourcesBuildPhase section */
145 |
146 | /* Begin XCBuildConfiguration section */
147 | 6212E9BB1F3990DC00BDF51A /* Debug */ = {
148 | isa = XCBuildConfiguration;
149 | buildSettings = {
150 | ALWAYS_SEARCH_USER_PATHS = NO;
151 | CLANG_ANALYZER_NONNULL = YES;
152 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
153 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
154 | CLANG_CXX_LIBRARY = "libc++";
155 | CLANG_ENABLE_MODULES = YES;
156 | CLANG_ENABLE_OBJC_ARC = YES;
157 | CLANG_WARN_BOOL_CONVERSION = YES;
158 | CLANG_WARN_CONSTANT_CONVERSION = YES;
159 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
160 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
161 | CLANG_WARN_EMPTY_BODY = YES;
162 | CLANG_WARN_ENUM_CONVERSION = YES;
163 | CLANG_WARN_INFINITE_RECURSION = YES;
164 | CLANG_WARN_INT_CONVERSION = YES;
165 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
166 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
167 | CLANG_WARN_UNREACHABLE_CODE = YES;
168 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
169 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
170 | COPY_PHASE_STRIP = NO;
171 | DEBUG_INFORMATION_FORMAT = dwarf;
172 | ENABLE_STRICT_OBJC_MSGSEND = YES;
173 | ENABLE_TESTABILITY = YES;
174 | GCC_C_LANGUAGE_STANDARD = gnu99;
175 | GCC_DYNAMIC_NO_PIC = NO;
176 | GCC_NO_COMMON_BLOCKS = YES;
177 | GCC_OPTIMIZATION_LEVEL = 0;
178 | GCC_PREPROCESSOR_DEFINITIONS = (
179 | "DEBUG=1",
180 | "$(inherited)",
181 | );
182 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
183 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
184 | GCC_WARN_UNDECLARED_SELECTOR = YES;
185 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
186 | GCC_WARN_UNUSED_FUNCTION = YES;
187 | GCC_WARN_UNUSED_VARIABLE = YES;
188 | IPHONEOS_DEPLOYMENT_TARGET = 10.3;
189 | MTL_ENABLE_DEBUG_INFO = YES;
190 | ONLY_ACTIVE_ARCH = YES;
191 | SDKROOT = iphoneos;
192 | };
193 | name = Debug;
194 | };
195 | 6212E9BC1F3990DC00BDF51A /* Release */ = {
196 | isa = XCBuildConfiguration;
197 | buildSettings = {
198 | ALWAYS_SEARCH_USER_PATHS = NO;
199 | CLANG_ANALYZER_NONNULL = YES;
200 | CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
201 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
202 | CLANG_CXX_LIBRARY = "libc++";
203 | CLANG_ENABLE_MODULES = YES;
204 | CLANG_ENABLE_OBJC_ARC = YES;
205 | CLANG_WARN_BOOL_CONVERSION = YES;
206 | CLANG_WARN_CONSTANT_CONVERSION = YES;
207 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
208 | CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
209 | CLANG_WARN_EMPTY_BODY = YES;
210 | CLANG_WARN_ENUM_CONVERSION = YES;
211 | CLANG_WARN_INFINITE_RECURSION = YES;
212 | CLANG_WARN_INT_CONVERSION = YES;
213 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
214 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
215 | CLANG_WARN_UNREACHABLE_CODE = YES;
216 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
217 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
218 | COPY_PHASE_STRIP = NO;
219 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
220 | ENABLE_NS_ASSERTIONS = NO;
221 | ENABLE_STRICT_OBJC_MSGSEND = YES;
222 | GCC_C_LANGUAGE_STANDARD = gnu99;
223 | GCC_NO_COMMON_BLOCKS = YES;
224 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
225 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
226 | GCC_WARN_UNDECLARED_SELECTOR = YES;
227 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
228 | GCC_WARN_UNUSED_FUNCTION = YES;
229 | GCC_WARN_UNUSED_VARIABLE = YES;
230 | IPHONEOS_DEPLOYMENT_TARGET = 10.3;
231 | MTL_ENABLE_DEBUG_INFO = NO;
232 | SDKROOT = iphoneos;
233 | VALIDATE_PRODUCT = YES;
234 | };
235 | name = Release;
236 | };
237 | 6212E9BE1F3990DC00BDF51A /* Debug */ = {
238 | isa = XCBuildConfiguration;
239 | buildSettings = {
240 | DEVELOPMENT_TEAM = RL64Y54S9V;
241 | HEADER_SEARCH_PATHS = (
242 | "$(PROJECT_DIR)/RCTJCoreModule/Lib/**",
243 | "$(SRCROOT)/../../react-native/React/**",
244 | );
245 | LIBRARY_SEARCH_PATHS = (
246 | "$(inherited)",
247 | "$(PROJECT_DIR)/RCTJCoreModule",
248 | "$(PROJECT_DIR)/RCTJCoreModule/Lib",
249 | );
250 | OTHER_LDFLAGS = "-ObjC";
251 | PRODUCT_NAME = "$(TARGET_NAME)";
252 | SKIP_INSTALL = YES;
253 | };
254 | name = Debug;
255 | };
256 | 6212E9BF1F3990DC00BDF51A /* Release */ = {
257 | isa = XCBuildConfiguration;
258 | buildSettings = {
259 | DEVELOPMENT_TEAM = RL64Y54S9V;
260 | HEADER_SEARCH_PATHS = (
261 | "$(PROJECT_DIR)/RCTJCoreModule/Lib/**",
262 | "$(SRCROOT)/../../react-native/React/**",
263 | );
264 | LIBRARY_SEARCH_PATHS = (
265 | "$(inherited)",
266 | "$(PROJECT_DIR)/RCTJCoreModule",
267 | "$(PROJECT_DIR)/RCTJCoreModule/Lib",
268 | );
269 | OTHER_LDFLAGS = "-ObjC";
270 | PRODUCT_NAME = "$(TARGET_NAME)";
271 | SKIP_INSTALL = YES;
272 | };
273 | name = Release;
274 | };
275 | /* End XCBuildConfiguration section */
276 |
277 | /* Begin XCConfigurationList section */
278 | 6212E9AF1F3990DC00BDF51A /* Build configuration list for PBXProject "RCTJCoreModule" */ = {
279 | isa = XCConfigurationList;
280 | buildConfigurations = (
281 | 6212E9BB1F3990DC00BDF51A /* Debug */,
282 | 6212E9BC1F3990DC00BDF51A /* Release */,
283 | );
284 | defaultConfigurationIsVisible = 0;
285 | defaultConfigurationName = Release;
286 | };
287 | 6212E9BD1F3990DC00BDF51A /* Build configuration list for PBXNativeTarget "RCTJCoreModule" */ = {
288 | isa = XCConfigurationList;
289 | buildConfigurations = (
290 | 6212E9BE1F3990DC00BDF51A /* Debug */,
291 | 6212E9BF1F3990DC00BDF51A /* Release */,
292 | );
293 | defaultConfigurationIsVisible = 0;
294 | defaultConfigurationName = Release;
295 | };
296 | /* End XCConfigurationList section */
297 | };
298 | rootObject = 6212E9AC1F3990DC00BDF51A /* Project object */;
299 | }
300 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/project.xcworkspace/xcuserdata/HuminiOS.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpush/jcore-react-native/2584a65944e3ebfcef86a0168f4229f4dbfe73eb/ios/RCTJCoreModule.xcodeproj/project.xcworkspace/xcuserdata/HuminiOS.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/project.xcworkspace/xcuserdata/wicked.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpush/jcore-react-native/2584a65944e3ebfcef86a0168f4229f4dbfe73eb/ios/RCTJCoreModule.xcodeproj/project.xcworkspace/xcuserdata/wicked.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/xcuserdata/HuminiOS.xcuserdatad/xcschemes/RCTJCoreModule.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
32 |
33 |
34 |
35 |
45 |
46 |
52 |
53 |
54 |
55 |
56 |
57 |
63 |
64 |
70 |
71 |
72 |
73 |
75 |
76 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/xcuserdata/HuminiOS.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | RCTJCoreModule.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 6212E9B31F3990DC00BDF51A
16 |
17 | primary
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule.xcodeproj/xcuserdata/wicked.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | RCTJCoreModule.xcscheme_^#shared#^_
8 |
9 | orderHint
10 | 0
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/RCTJCoreModule.h:
--------------------------------------------------------------------------------
1 | //
2 | // RCTJCoreModule.h
3 | // RCTJCoreModule
4 | //
5 | // Created by oshumini on 2017/8/8.
6 | // Copyright © 2017年 HXHG. All rights reserved.
7 | //
8 |
9 | #import
10 | #if __has_include()
11 | #import
12 | #import
13 | #import
14 | #elif __has_include("RCTBridge.h")
15 | #import "RCTEventEmitter.h"
16 | #import "RCTRootView.h"
17 | #import "RCTBridge.h"
18 | #endif
19 |
20 | #import
21 | #import
22 |
23 | @interface RCTJCoreModule : RCTEventEmitter
24 |
25 | @end
26 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/RCTJCoreModule.m:
--------------------------------------------------------------------------------
1 | //
2 | // RCTJCoreModule.m
3 | // RCTJCoreModule
4 | //
5 | // Created by oshumini on 2017/8/8.
6 | // Copyright © 2017年 HXHG. All rights reserved.
7 | //
8 |
9 | #import "RCTJCoreModule.h"
10 | #import "JGInforCollectionAuth.h"
11 |
12 | @implementation RCTJCoreModule
13 |
14 | #define JgLog(fmt, ...) NSLog((@"| JGER | iOS | " fmt), ##__VA_ARGS__)
15 |
16 | RCT_EXPORT_MODULE(JCoreModule);
17 |
18 | #pragma mark --- 设备信息采集授权接口(合规接口)
19 | RCT_EXPORT_METHOD(setAuth: (BOOL *)enable)
20 | {
21 | JgLog("JCollectionAuth %d",enable);
22 | __block BOOL isAuth= enable;
23 | [JGInforCollectionAuth JCollectionAuth:^(JGInforCollectionAuthItems * _Nonnull authInfo) {
24 | authInfo.isAuth = isAuth;
25 | }];
26 | }
27 |
28 | //事件处理
29 | - (NSArray *)supportedEvents
30 | {
31 | return @[];
32 | }
33 |
34 | @end
35 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | AvailableLibraries
6 |
7 |
8 | HeadersPath
9 | Headers
10 | LibraryIdentifier
11 | ios-arm64_x86_64-simulator
12 | LibraryPath
13 | libJCore.a
14 | SupportedArchitectures
15 |
16 | arm64
17 | x86_64
18 |
19 | SupportedPlatform
20 | ios
21 | SupportedPlatformVariant
22 | simulator
23 |
24 |
25 | HeadersPath
26 | Headers
27 | LibraryIdentifier
28 | ios-arm64
29 | LibraryPath
30 | libJCore.a
31 | SupportedArchitectures
32 |
33 | arm64
34 |
35 | SupportedPlatform
36 | ios
37 |
38 |
39 | CFBundlePackageType
40 | XFWK
41 | XCFrameworkFormatVersion
42 | 1.0
43 |
44 |
45 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64/Headers/JGCOREAPI.h:
--------------------------------------------------------------------------------
1 | //
2 | // JGCOREService.h
3 | // JCore
4 | //
5 | // Created by Shuni Huang on 2024/3/19.
6 | // Copyright © 2024 jiguang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | @interface JGCOREAPI : NSObject
14 |
15 | + (void)ci:(BOOL)enable;
16 |
17 | @end
18 |
19 | NS_ASSUME_NONNULL_END
20 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64/Headers/JGInforCollectionAuth.h:
--------------------------------------------------------------------------------
1 | //
2 | // JGInforCollectionAuth.h
3 | // JCore
4 | //
5 | // Created by 豆瓣 on 2021/10/27.
6 | // Copyright © 2021 jiguang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// 合规接口,是否授权极光采集一定的设备信息
14 | @interface JGInforCollectionAuthItems : NSObject
15 | /// 是否授权,默认YES
16 | @property(nonatomic,assign)BOOL isAuth;
17 | @end
18 |
19 | @interface JGInforCollectionAuth : NSObject
20 |
21 | /// 设备信息采集授权接口(合规接口)
22 | /// 请务必在调用初始化、功能性接口前调用此接口进行合规授权
23 | /// @param authBlock auth:YES 则极光认为您同意极光采集一定的设备信息
24 | +(void)JCollectionAuth:(void(^_Nullable)(JGInforCollectionAuthItems *authInfo))authBlock;
25 | @end
26 |
27 | NS_ASSUME_NONNULL_END
28 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64/PrivacyInfo.xcprivacy:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | NSPrivacyTrackingDomains
6 |
7 | NSPrivacyCollectedDataTypes
8 |
9 |
10 | NSPrivacyCollectedDataType
11 | NSPrivacyCollectedDataTypeCrashData
12 | NSPrivacyCollectedDataTypeLinked
13 |
14 | NSPrivacyCollectedDataTypeTracking
15 |
16 | NSPrivacyCollectedDataTypePurposes
17 |
18 | NSPrivacyCollectedDataTypePurposeAppFunctionality
19 |
20 |
21 |
22 | NSPrivacyCollectedDataType
23 | NSPrivacyCollectedDataTypeDeviceID
24 | NSPrivacyCollectedDataTypeLinked
25 |
26 | NSPrivacyCollectedDataTypeTracking
27 |
28 | NSPrivacyCollectedDataTypePurposes
29 |
30 | NSPrivacyCollectedDataTypePurposeAppFunctionality
31 |
32 |
33 |
34 | NSPrivacyCollectedDataType
35 | NSPrivacyCollectedDataTypePreciseLocation
36 | NSPrivacyCollectedDataTypeLinked
37 |
38 | NSPrivacyCollectedDataTypeTracking
39 |
40 | NSPrivacyCollectedDataTypePurposes
41 |
42 | NSPrivacyCollectedDataTypePurposeAppFunctionality
43 |
44 |
45 |
46 | NSPrivacyTracking
47 |
48 | NSPrivacyAccessedAPITypes
49 |
50 |
51 | NSPrivacyAccessedAPITypeReasons
52 |
53 | E174.1
54 |
55 | NSPrivacyAccessedAPIType
56 | NSPrivacyAccessedAPICategoryDiskSpace
57 |
58 |
59 | NSPrivacyAccessedAPITypeReasons
60 |
61 | CA92.1
62 |
63 | NSPrivacyAccessedAPIType
64 | NSPrivacyAccessedAPICategoryUserDefaults
65 |
66 |
67 | NSPrivacyAccessedAPITypeReasons
68 |
69 | C617.1
70 |
71 | NSPrivacyAccessedAPIType
72 | NSPrivacyAccessedAPICategoryFileTimestamp
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64/libJCore.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpush/jcore-react-native/2584a65944e3ebfcef86a0168f4229f4dbfe73eb/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64/libJCore.a
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64_x86_64-simulator/Headers/JGCOREAPI.h:
--------------------------------------------------------------------------------
1 | //
2 | // JGCOREService.h
3 | // JCore
4 | //
5 | // Created by Shuni Huang on 2024/3/19.
6 | // Copyright © 2024 jiguang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | @interface JGCOREAPI : NSObject
14 |
15 | + (void)ci:(BOOL)enable;
16 |
17 | @end
18 |
19 | NS_ASSUME_NONNULL_END
20 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64_x86_64-simulator/Headers/JGInforCollectionAuth.h:
--------------------------------------------------------------------------------
1 | //
2 | // JGInforCollectionAuth.h
3 | // JCore
4 | //
5 | // Created by 豆瓣 on 2021/10/27.
6 | // Copyright © 2021 jiguang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | NS_ASSUME_NONNULL_BEGIN
12 |
13 | /// 合规接口,是否授权极光采集一定的设备信息
14 | @interface JGInforCollectionAuthItems : NSObject
15 | /// 是否授权,默认YES
16 | @property(nonatomic,assign)BOOL isAuth;
17 | @end
18 |
19 | @interface JGInforCollectionAuth : NSObject
20 |
21 | /// 设备信息采集授权接口(合规接口)
22 | /// 请务必在调用初始化、功能性接口前调用此接口进行合规授权
23 | /// @param authBlock auth:YES 则极光认为您同意极光采集一定的设备信息
24 | +(void)JCollectionAuth:(void(^_Nullable)(JGInforCollectionAuthItems *authInfo))authBlock;
25 | @end
26 |
27 | NS_ASSUME_NONNULL_END
28 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64_x86_64-simulator/PrivacyInfo.xcprivacy:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | NSPrivacyTrackingDomains
6 |
7 | NSPrivacyCollectedDataTypes
8 |
9 |
10 | NSPrivacyCollectedDataType
11 | NSPrivacyCollectedDataTypeCrashData
12 | NSPrivacyCollectedDataTypeLinked
13 |
14 | NSPrivacyCollectedDataTypeTracking
15 |
16 | NSPrivacyCollectedDataTypePurposes
17 |
18 | NSPrivacyCollectedDataTypePurposeAppFunctionality
19 |
20 |
21 |
22 | NSPrivacyCollectedDataType
23 | NSPrivacyCollectedDataTypeDeviceID
24 | NSPrivacyCollectedDataTypeLinked
25 |
26 | NSPrivacyCollectedDataTypeTracking
27 |
28 | NSPrivacyCollectedDataTypePurposes
29 |
30 | NSPrivacyCollectedDataTypePurposeAppFunctionality
31 |
32 |
33 |
34 | NSPrivacyCollectedDataType
35 | NSPrivacyCollectedDataTypePreciseLocation
36 | NSPrivacyCollectedDataTypeLinked
37 |
38 | NSPrivacyCollectedDataTypeTracking
39 |
40 | NSPrivacyCollectedDataTypePurposes
41 |
42 | NSPrivacyCollectedDataTypePurposeAppFunctionality
43 |
44 |
45 |
46 | NSPrivacyTracking
47 |
48 | NSPrivacyAccessedAPITypes
49 |
50 |
51 | NSPrivacyAccessedAPITypeReasons
52 |
53 | E174.1
54 |
55 | NSPrivacyAccessedAPIType
56 | NSPrivacyAccessedAPICategoryDiskSpace
57 |
58 |
59 | NSPrivacyAccessedAPITypeReasons
60 |
61 | CA92.1
62 |
63 | NSPrivacyAccessedAPIType
64 | NSPrivacyAccessedAPICategoryUserDefaults
65 |
66 |
67 | NSPrivacyAccessedAPITypeReasons
68 |
69 | C617.1
70 |
71 | NSPrivacyAccessedAPIType
72 | NSPrivacyAccessedAPICategoryFileTimestamp
73 |
74 |
75 |
76 |
77 |
--------------------------------------------------------------------------------
/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64_x86_64-simulator/libJCore.a:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jpush/jcore-react-native/2584a65944e3ebfcef86a0168f4229f4dbfe73eb/ios/RCTJCoreModule/jcore-ios-5.0.1.xcframework/ios-arm64_x86_64-simulator/libJCore.a
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jcore-react-native",
3 | "version": "1.9.6",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "jcore-react-native",
9 | "version": "1.9.6",
10 | "license": "ISC"
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name" : "jcore-react-native",
3 | "description": "React Native JCore component for Android and iOS",
4 | "homepage" : "https://github.com/jpush/jcore-react-native",
5 | "author" : "wicked.tc130",
6 | "license" : "ISC",
7 | "main" : "index.js",
8 | "version" : "2.3.0",
9 | "repository" : {
10 | "type": "git",
11 | "url": "https://github.com/jpush/jcore-react-native"
12 | },
13 | "keywords" : [
14 | "react-native",
15 | "jiguang",
16 | "JCore"
17 | ],
18 | "peerDependencies": {
19 | "react-native": ">= 0.60"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------