xcode 集成cordova
2018-10-20 11:13:04 u013702678 阅读数 77

这是我们的Cordova SDK的文档。 SDK使用iOS和Android的原生扩展,但如果需要,将回退到纯JavaScript版本(@ sentry / browser)。

安装sentry-cordova时,Sentry Wizard将帮助您配置项目。我们还为您的Xcode项目添加了一个构建步骤,以上传我们需要用来表示iOS崩溃的调试符号。

一、配置

您必须在config.xml中将sentry.io列入白名单,如:

<access origin=”sentry.io” />

请记住,如果您使用内部部署安装,请相应地调整此域。

二、IOS处理

使用Xcode时,可以直接挂钩到构建过程以上载调试符号。如果您正在使用bitcode,则需要禁用“将调试符号上传到Sentry”构建阶段,然后分别将调试符号从iTunes Connect上传到Sentry。

三、运行脚本阶段

如果要在构建应用程序期间运行调试符号上载。您可以将其添加为Xcode中的运行脚本阶段。还要确保将项目设置中的DEBUG_INFORMATION_FORMAT设置为DWARF和dSYM文件。

export SENTRY_PROPERTIES=sentry.properties
function getProperty {
    PROP_KEY=$1
    PROP_VALUE=`cat $SENTRY_PROPERTIES | grep "$PROP_KEY" | cut -d'=' -f2`
    echo $PROP_VALUE
}
if [ ! -f $SENTRY_PROPERTIES ]; then
    echo "warning: SENTRY: sentry.properties file not found! Skipping symbol upload."
    exit 0
fi
echo "# Reading property from $SENTRY_PROPERTIES"
SENTRY_CLI=$(getProperty "cli.executable")
SENTRY_COMMAND="../../$SENTRY_CLI upload-dsym"
$SENTRY_COMMAND

 下一个脚本确保在将构建提交到iTunes Connect时从二进制文件中条带化所有未使用的体系结构。

如果在将构建提交到iTunes Connect时收到错误,则可能缺少此脚本。还重新添加插件帮助了一些人。

# SENTRY_FRAMEWORK_PATCH
APP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"
find "$APP_PATH" -name '*.framework' -type d | while read -r FRAMEWORK
do
    FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)
    FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"
    echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"
    EXTRACTED_ARCHS=()

    for ARCH in $ARCHS
    do
        echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"
        lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"
        EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")
    done

    echo "Merging extracted architectures: ${ARCHS}"
    lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"
    rm "${EXTRACTED_ARCHS[@]}"
    echo "Replacing original executable with thinned version"
    rm "$FRAMEWORK_EXECUTABLE_PATH"
    mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"
done

xcode 集成cordova 相关内容

2015-12-21 11:06:17 shooter32 阅读数 7071

申请帐号

首先你需要从这个网站支付宝商家页面申请帐号,然后申请无线支付

中间需要经历实名认证,对公帐号认证等等认证,全部成功之后会收到短信通知告诉你预约成功。

上传RSA公钥

  • 按照这个网页的说明生成RSA公钥
    注意:在pkcs8 -topk8 -inform PEM -in rsa_private_key.pem -outform PEM -nocrypt这一步会将生成的PKCS8格式的私钥打印到屏幕,需要手动保存。之后需要使用。
  • 然后把生成好的RSA公钥上传到这个支付宝上,参照这个网页

注意上传的时候记住删掉公钥文件前后的—–BEGIN PUBLIC KEY—–和—–END PUBLIC KEY—–,以及空格和换行,否则会告诉你公钥非法

准备好集成资料

  • 支付宝帐号
  • 合作者身份ID(PID): 查看方法
  • 刚才生成的PKCS8格式的私钥:rsa_private_key.pem

集成Cordova支付宝插件 cordova-plugin-alipay

以下以Mac系统为例

  1. 使用git命令将插件下载到本地,并标记为$CORDOVA_PLUGIN_DIR

    git clone https://github.com/charleyw/cordova-plugin-alipay.git && cd cordova-plugin-alipay && export CORDOVA_PLUGIN_DIR=$(pwd)
    
  2. 修改$CORDOVA_PLUGIN_DIR/plugin.xml,将

    <preference name="private_key" value="$PRIVATE_KEY" />
    

    改成

    <preference name="PRIVATE_KEY" value="你生成的PKCS8格式的私钥"/>
    

    注意:注意和公钥一样,需要去掉—–BEGIN PUBLIC KEY—–和—–END PUBLIC KEY—–,以及空格和换行

  3. 安装

    cordova plugin add $CORDOVA_PLUGIN_DIR --variable PARTNER_ID=[合作者身份ID(PID)] --variable SELLER_ACCOUNT=[你的商户支付宝帐号]
    

安装成功之后剩下的就是编程的问题了。

使用方法

window.alipay.pay({
    tradeNo: tradeNo,
    subject: "测试标题",
    body: "我是测试内容",
    price: 0.02,
    fromUrlScheme: "demoScheme://afterPaymentSuccess",
    notifyUrl: "http://your.server.notify.url"
});
  • tradeNo 这个是支付宝需要的,应该是一个唯一的ID号
  • subject 这个字段会显示在支付宝付款的页面
  • body 订单详情,没找到会显示哪里
  • price 价格,支持两位小数
  • fromUrlScheme 支付完成跳转的URL Scheme(iOSAndroid),可以使用这个Cordova插件定义你的App的Scheme

调用pay方法会打开支付宝支付页面进行支付(如果有安装支付宝钱包的话会打开支付宝钱包),支付完成之后会跳回到程序,会跳到fromUrlScheme定义的程序页面,
如上面的例子会返回你的程序的/afterPaymentSuccess路径所定义的页面,并且支付结果会附加到这个url后面。你可以在程序中调试来确定该怎么处理。

注意:因为插件的作者比较懒一直没有加回掉函数(所以需要使用URL Scheme来返回结果),所以使用这个插件的基本条件是:1. 使用URL Scheme, 2. 你的应用有路由或类似的东西来代表页面状态(即可以通过URL跳转到某个页面),因为支付成功之后会跳转到这个页面。

祝大家好运!

xcode 集成cordova 相关内容

2017-11-15 17:32:00 weixin_33958585 阅读数 24

1.使用ionic框架搭建的工程框架后目录结构如下:

7897420-cfafeeb7e6c3e365.png

其中cofig.xml配置文件,platforms是生成的iOS项目

2.在此基础上我要把ionic下的工程集成到本地Xcode创建的工程中,下面就要说一下我自己创建的过程了

(1)Xcode工程配置

        打开xcode文件目录,将ionic主目录下的config.xml拷贝至xcode工程中

        进入ionic工程下的platforms文件夹,把CordovaLib文件夹和www文件夹拷贝到Xcode工程中

(2)添加依赖库

Add Files添加CordovaLib.xcodeproj 和 config.xml

打开Xcode工程,右键Add Files to ...添加CordovaLib.xcodeproj 和 config.xml

继续在Xcode工程中,打开finder中Xcode源码的文件夹,找到www文件夹,拖至工程中,务必Added folders要选择folder references,这样添加进去的文件夹是蓝色的,否则的话(文件夹是黄色的)项目编译会提示找不到www里的index.html

至此工程文件配置已经完成。


7897420-e690d34effdf0e12.png

(3)工程配置

进入Build Phases,在Target Dependencies 和Link Binary 中添加Cordova

link Binary中添加依赖库,libCordova.a  ,  AssetsLibrary.framework    ,MobileCoreService.framework

Target Dependencies中添加CordovaLib依赖库

添加完成后如图所示:

7897420-e02e1602b166c1ce.png

(4)设置工程

buiild stetings 的 otherLiner flags 添加 -all_load和-Objc

7897420-b41963562797d69d.png


至此工程配置已经全部完成。

3,运行效果,假设加载在UIViewcontroller上,就在此页面实现:

CDVViewController* viewController = [CDVViewController new];

viewController.wwwFolderName = @"www";

//    viewController.startPage = @"choose.html";

viewController.view.frame = CGRectMake(0, 0, 320, 480);

[self.view addSubview:viewController.view];

www路径和Index.html的名字什么的都可以去CordovaLib.xcodeproj中修改

编译运行ok.


7897420-e95e47cedfa71b66.png

xcode 集成cordova 相关内容

2017-10-10 14:09:00 weixin_34255055 阅读数 99

仅供记录

在已有的cordova项目根目录,执行以下命令,添加友盟插件:

// 这是笔者自己集成某个友盟sdk版本的插件
$ cordova plugins add https://github.com/kamifun/cordova-plugin-umeng

插件集成参考友盟文档

修改配置

修改/plugins/Umeng/plugin.xml文件,把UMENG_APPKEYUMENG_CHANNEL改成正确的值。

Android初始化

修改/platforms/android/src/xxx/xxx/xxx/MainActivity.java文件:

// 在MainActivity类内部加入
    /**
     * onCreate中调用
     */
    private void initUmengSDK() {
        MobclickAgent.setScenarioType(this, EScenarioType.E_UM_NORMAL);
        MobclickAgent.setDebugMode(true);
        MobclickAgent.openActivityDurationTrack(false);
        MobclickAgent.setSessionContinueMillis(1000);
    }

    @Override
    protected void onResume() {
        super.onResume();
        MobclickAgent.onResume(this);
    }

    @Override
    protected void onPause() {
        super.onPause();
        MobclickAgent.onPause(this);
    }

然后再MainActivityonCreate方法最底部加入一行代码:

// loadUrl(launchUrl);下方
initUmengSDK();

IOS初始化

找到根目录/platforms/ios/demo/Classes/AppDelegate.m 文件,在(BOOL)application:(UIApplication)application didFinishLaunchingWithOptions:(NSDictionary)launchOptions方法下加入以下代码:

// key在友盟后台中找到
UMConfigInstance.appKey = @"Your Appkey";
// 渠道号Id
UMConfigInstance.channelId = @"App Store";

[MobClick startWithConfigure:UMConfigInstance];

结尾

如此,友盟集成即完成了,如果还需自定义事件,需要参考文档,然后使用暴露的js方法完成你的需求。

xcode 集成cordova 相关内容

2017-08-11 11:34:00 weixin_33948416 阅读数 31

1.如何安装cordova开发环境

1)先要安装Node.js. 链接:https://nodejs.org/en/
2)安装cordova. 链接:http://cordova.apache.org/
终端步骤:

$ npm install -g cordova

2.如何构建cordova的工程

1)创建cordova的project

$ cordova create testapp

2)为cordova项目添加platform project

$ cd testapp 
$ cordova platform add ios //加入ios开发平台
$ cordova platform add android //加入android开发平台

3)在相关平台运行app

$ cordova run ios //运行ios
$ cordova run android //运行android

4)用指定模拟器运行cordova工程

$ cordova emulate ios --target iPhone-6s

3.通过vue-cli构建vue项目

1)安装vue-cli

$ npm install -g vue-cli

2)创建工程

$ vue init webpack-simple vue-project-name

*两个创建的工程放在平级

1909655-5807ca6ff716fee6.png
屏幕快照 2017-08-11 上午10.09.48.png

3)安装vue依赖包

$ cd vue-project-name
$ npm install

4)安装Vue-router,Vuex和Mint-ui

$ npm install vue-router vuex --save
$ npm install mint-ui --save

5)修改webpack.config.js

...
output: {
    path: path.resolve(__dirname, '../testapp/www/js'),
    publicPath: 'js/',
    filename: 'build.js'
  },
...

path指的是我们cordova里的www/js目录,因为打包的时候会把所有js文件放到cordova工程的js目录下。
publicPath是指的一些公共资源(如图片,css文件)的加载路径。

6)最后修改cordova工程的www下的index.html文件

  <body>
        <!-- <div class="app">
            <h1>Apache Cordova</h1>
            <div id="deviceready" class="blink">
                <p class="event listening">Connecting to Device</p>
                <p class="event received">Device is Ready</p>
            </div>
        </div> -->
        <div id="app"></div>
        <script type="text/javascript" src="cordova.js"></script>
        <script type="text/javascript" src="js/index.js"></script>
        <script type="text/javascript" src="js/build.js"></script>
   </body>

加入一个<div id="app"></div>和<script type="text/javascript" src="js/build.js"></script>
这里面就是vue生成的js
直接运行cordova run ios就可以看到效果了,我们已经将vue生成的文件运行了。

1909655-305894e693ff3235.png
屏幕快照 2017-08-11 上午11.33.53.png

xcode 集成cordova 相关内容

没有更多推荐了,返回首页