# OpenApplus
## 官方网站
http://www.openapplus.com
## 捐赠热线:
<img src="https://raw.githubusercontent.com/linwaiwai/openapplus/master/wechat.jpeg" alt="Donate with Alipay or Wechat Pay" title="Donate with Alipay or Wechat Pay" width="200"/>
捐赠的同学如果要联系我,麻烦在付款方备注留下您的微信联系方式,以便我加你。
## 参考链接
http://www.jianshu.com/p/9c289f784928
## iOS集成
### Cocoapods 安装
推荐使用 [CocoaPods](http://cocoapods.org/) 的方式安装使用。
[CocoaPods](http://cocoapods.org/) 是一个广泛适用于Objective-C依赖管理工具,能够自动配置项目,简化你配置Openapp+的过程,使用以下命令行安装
$ gem install cocoapods
### OpenApplus 安装
使用CocosPods集成Openapp+到Xcode
#### 在Podfile文件加入
```ObjectiveC
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
#忽略引入库的警告
inhibit_all_warnings!
target 'openapplus-ios-demo' do
pod 'OpenApplus', '~> 1.3.8'
end
```
#### 在工程中Info.plist文件中添加如下项
```
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
```
### 运行
在 AppDelegate.m 里按顺序调用三个方法:
1、调用 +startWithAppKey: ,参数为第一步获得的 AppKey。
2、调用 +sync 方法检查包更新。
在AppDelegate.m或ViewController.m中调用 navigateToMiniProgram: 加载小程序项目,参数为在平台中创建的项目的名称。
```ObjectiveC
#import <"openapplus/openapplus.h">
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:testViewController];
self.window.rootViewController = navigationController;
[self.window makeKeyAndVisible];
[OpenApplus startWithAppKey:@"test"];
[OpenApplus sync];
[OpenApplus setNavigationController:navigationController];
// JS_APPID 为小程序的APP_ID
[OpenApplus navigateToMiniProgram:@"openapplus://jsApp/#JS_APPID#" completion:^{
}];
...
}
@end
```
上述例子是把 Openapplus 同步放在 -application:didFinishLaunchingWithOptions: 里,若希望包能及时推送,可以把 [OpenApplus sync] 放在 -applicationDidBecomeActive: 里,每次唤醒都能同步更新 OpenApplus 包,不需要等用户下次启动。
## Android集成
### Android Studio集成
下载SDK功能组件,解压.zip文件得到相应组件包(openapplus-release.aar),在Android Studio的项目工程libs目录中拷入相关组件jar包。
右键Android Studio的项目工程—>选择Open Module Settings —>在 Project Structure弹出框中 —>选择 Dependencies选项卡 —>点击左下“+”—>选择组件包类型—>引入相应的组件包。
### 或者使用gradle
```
buildscript {
repositories {
jcenter()
}
}
allprojects {
repositories {
jcenter()
}
}
```
```
dependencies{
implementation ('com.openapplus:openapplus:1.0.3')
implementation 'com.eclipsesource.j2v8:j2v8:6.1.0@aar'
}
```
详细添加位置请参考DEMO[https://github.com/linwaiwai/openapplus-demo/blob/master/Android/]
### 运行
在项目工程的自定义application中的onCreate方法中添加以下两个方法:
注意:一定要在主进程进行该项操作
```
OpenApplus.registerApp(this, SampleContants.APPID, SampleContants.APP_SECRET);
OpenApplus.sync();
OpenApplus.setCallback(new OpenApplusCallback() {
@Override
public void invoke(OACallbackType type, JSONObject data, OpenApplusNotify notify) {
if (type == OACallbackType.OACallbackTypeAuthUser){
// 该接口仅供测试使用,请使用服务端发送给授权请求
OARequestWrapper requestWrapper = OpenApplus.makeRequestWrapper(SampleContants.SERVER_APPID, SampleContants.SERVER_APP_SECRET);
OAAuthDtoWrapper dto = new OAAuthDtoWrapper();
dto.setUid("1");
try {
dto.setCode(data.getString("code"));
} catch (JSONException e) {
e.printStackTrace();
}
String deviceID = Settings.Secure.getString(WXEnvironment.sApplication.getApplicationContext().getContentResolver(),
Settings.Secure.ANDROID_ID);
dto.setDeviceid(deviceID);
requestWrapper.sendObject(dto, notify);
}
}
});
````
注意:
参数1:上下文,必须的参数,不能为空
参数2:OpenApplus app key,必须参数。
参数3:OpenApplus app secret,必须参数。
### 添加相关权限
``` xml
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_LOGS"/>
<!-- 这个权限用于进行网络定位 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<!-- 这个权限用于访问GPS定位 -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission android:name="android.permission.ACCESS_GPS"/>
<uses-feature android:name="android.hardware.camera"/>
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-permission android:name="getui.permission.GetuiService.com.bmdoctor.jyt"/>
<!--amap额外权限-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
```
### 代码混淆
如果您的应用使用了混淆, 请添加
```shell
-keep class com.openapplus.** {*;}
```
### 添加Activty入口
在AndroidManifest.xml中添加
```xml
<activity android:name="com.openapplus.activity.OATinyProgramActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="com.benmu.weex.example.categoty.page"/>
<data android:scheme="http"/>
<data android:scheme="https"/>
</intent-filter>
</activity>
```
### 启动小程序容器
```JAVA
Intent intent = new Intent(SplashActivity.this, OATinyProgramActivity.class);
intent.putExtra("tiny","openapplus://jsApp/xxxxx");
startActivity(intent);
finish();
```
### Codova支持
#### 自动安装
##### 安装cordova
```
> npm install -g cordova
> cordova create MyApp
> cd Cordova-Demo
> cordova platform add ios
> cordova plugin add @openapplus/cordova-openapplus-plugin
```
##### 编写codova插件调用函数
```javascript
function onButtonClicked(){
var CordovaOpenApplusPlugin = cordova.plugins.CordovaOpenApplusPlugin;
CordovaOpenApplusPlugin.navigateToMiniProgram("openapplus://jsApp/Lr12JhPrE9bg7N4uoABBXY");
}
var app = {
// Application Constructor
initialize: function() {
document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
},
// deviceready Event Handler
//
// Bind any cordova events here. Common events are:
// 'pause', 'resume', etc.
onDev
没有合适的资源?快使用搜索试试~ 我知道了~
专为小程序共享而生的小程序容器.zip
共907个文件
png:772个
data:65个
nib:17个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 105 浏览量
2024-11-30
22:25:45
上传
评论
收藏 47.01MB ZIP 举报
温馨提示
开放Applus官方网站http://www.openapplus.com捐赠热线:捐赠的同学如果要联系我,麻烦在付款方备注留下您的微信联系方式,以便我加你。参考链接http://www.jianshu.com/p/9c289f784928iOS集成Cocoapods 安装推荐使用 CocoaPods 的方式安装使用。CocoaPods 是一个广泛适用于Objective-C依赖管理工具,能够自动配置项目,简化你配置Openapp+的过程,使用以下命令行安装$ gem 安装 cocoapodsOpenApplus 安装使用CocosPods集成Openapp+到Xcode在Podfile文件加入source 'https://github.com/CocoaPods/Specs.git'platform :ios, '8.0'#忽略引入库的警告inhibit_all_warnings!target 'openapplus-ios-demo' do pod 'OpenApplus', '~> 1.3.8'end在工
资源推荐
资源详情
资源评论
收起资源包目录
专为小程序共享而生的小程序容器.zip (907个子文件)
openapplus-release.aar 9.85MB
default_config.bin 178KB
odd_config.bin 171KB
changeplay.bin 14KB
road_config.bin 5KB
openapplus.cer 1KB
af-appx.min.css 27KB
cityinfo.dat 340KB
GSafeConfig.dat 14KB
icons_4_12_1488521409.data 165KB
icons_2_12_1498048312.data 131KB
icons_3_12_1498048330.data 130KB
icons_1_12_1498048291.data 130KB
icons_8_12_1498048348.data 130KB
icons_27_10_1475031813.data 127KB
icons_9_10_1476066932.data 127KB
icons_26_10_1476066932.data 109KB
icons_50_10_1470645645.data 82KB
icons_7_12_1497253551.data 77KB
icons_6_12_1497253591.data 58KB
3d_sky_night.data 50KB
3d_sky_day.data 44KB
roadarrow.data 43KB
search_scenic_icon.data 42KB
dash.data 21KB
tnl_n.data 21KB
tnl_l.data 21KB
dash_cd.data 21KB
tmc_blind_amble.data 21KB
tyl_l.data 21KB
dash_tq.data 21KB
tbl_n.data 21KB
tnl.data 21KB
tgl.data 21KB
tgl_n.data 21KB
tbl_l.data 21KB
trl_n.data 21KB
trl_l.data 21KB
tmc_blind_smoothly.data 21KB
tbl.data 21KB
tyl.data 21KB
tmc_blind_congestion.data 21KB
tyl_n.data 21KB
tgl_l.data 21KB
tmc_blind_null.data 21KB
tmc_blind_severe_congestion.data 21KB
trl.data 21KB
style_33_10_1498047815.data 17KB
style_30_10_1498047712.data 17KB
style_31_10_1498047749.data 17KB
style_32_10_1498047781.data 17KB
style_1_10_1498047646.data 16KB
style_15_10_1497583771.data 16KB
style_12_10_1467006104.data 13KB
style_6_10_1497252523.data 13KB
style_3_10_1497252336.data 13KB
style_14_10_1497252572.data 12KB
lineround.data 11KB
config_1_1_1470722888.data 10KB
style_13_10_1497252546.data 9KB
style_8_10_1497252659.data 9KB
icons_5_12_1488354051.data 9KB
icons_11_12_1488521704.data 7KB
style_4_10_1498463093.data 7KB
style_5_10_1498463124.data 7KB
style_10_10_1472718686.data 7KB
style_100_10_1497254453.data 3KB
waterline.data 3KB
style_50_10_1470645645.data 1KB
building.data 996B
config_2_1_1470363686.data 640B
bktile.data 151B
bktile_n.data 145B
style_17_10_1488360312.data 43B
OpenApplus.h 1KB
OAConfiguration.h 1KB
OAInternalConfiguration.h 887B
OAConfigureBuilder.h 524B
OAUserInfo.h 506B
OAAuthDtoWrapper.h 437B
OAUserAuthRequestWrapper.h 407B
index.html 1KB
wechat.jpeg 101KB
page.js 2.26MB
component.js 314KB
af-appx.min.js 297KB
reactdom.js 127KB
af-appx.worker.min.js 114KB
vconsole.min.js 58KB
react.js 22KB
es6-promise.min.js 6KB
main.js 6KB
updates.json 434B
README.md 12KB
module.modulemap 101B
naviprompt.mp3 18KB
edog_dingdong.mp3 10KB
autoReroute.mp3 7KB
naviCarema.mp3 6KB
AMapNaviDriveViewInternal.nib 36KB
共 907 条
- 1
- 2
- 3
- 4
- 5
- 6
- 10
资源评论
赵闪闪168
- 粉丝: 1726
- 资源: 6171
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功