ソースを参照

修改:1、iap的命名空间改成iapshop(和bulldogsdk重名了) 2、IAPDelegate文件名重命名为IAPShopDelegate(和bulldogsdk重名了)

杜哥很忙 9 ヶ月 前
コミット
8a8f38d5c8

+ 1 - 1
Classes/AppDelegate.cpp

@@ -77,7 +77,7 @@ bool AppDelegate::applicationDidFinishLaunching() {
     
         _rect = Rect(0, 0, 720, 1280);
         _scale=0.8f;
-        glview = GLViewImpl::createWithRect("ccProj", cocos2d::Rect(0, 0, designResolutionSize.width/2, designResolutionSize.height/2));
+        glview = GLViewImpl::createWithRect("ccProj", cocos2d::Rect(0, 0, designResolutionSize.width/2, designResolutionSize.height/2) ,1.5);
 #else
         glview = GLViewImpl::create("ccProj");
 #endif

+ 2 - 2
Classes/IAP/Conf/IAPConf.hpp

@@ -24,7 +24,7 @@ typedef struct {
 
 typedef std::vector<ItemInGoods> AreaInGooods;
 
-typedef struct {
+struct GoodsInfo{
     std::string id;
     std::string type;
     std::string style;
@@ -104,7 +104,7 @@ typedef struct {
             idx++;
         }
     }
-} GoodsInfo;
+};
 
 class IAPConf {
 public:

+ 1 - 1
Classes/IAP/Ctl/IAPProcess.cpp

@@ -117,7 +117,7 @@ void IAPProcess::onProductPurchaseSuccess(const std::string& pid) {
         _cbIfSuccess();
     }
     // 记录用户购买信息
-    iap::IAPCtlShop::createWith()->addUserBuyInfo(pid);
+    iapshop::IAPCtlShop::createWith()->addUserBuyInfo(pid);
     printf("购买%s成功\n", pid.c_str());
     
 //    // 判断当前是否在家装场景,如果在游戏场景,则等待

+ 5 - 5
Classes/IAP/IAPCtlShop.cpp

@@ -20,7 +20,7 @@
 #include "PBConfigData.hpp"
 #include "PurchaseBannerView.hpp"
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 IAPCtlShop* IAPCtlShop::_instance = nullptr;
 
@@ -38,7 +38,7 @@ void IAPCtlShop::init(std::string &cfgFN){
     _conf->initWith(baseConf);
 }
 
-void IAPCtlShop::setDelegate(IAPDelegate *delegate){
+void IAPCtlShop::setDelegate(IAPShopDelegate *delegate){
     _delegate = delegate;
 }
 
@@ -107,7 +107,7 @@ void IAPCtlShop::showSlideCardsByCoinsIn(cocos2d::Node* pParent, int stillNeedCo
 
 
 void IAPCtlShop::addUserBuyInfo(std::string commodityID){
-    iap::IAPUserData::getInstance()->addBuyInfo(commodityID);
+    iapshop::IAPUserData::getInstance()->addBuyInfo(commodityID);
     if(_delegate){
         std::vector<GoodsInfo> goodInfos;
         _conf->getAllGoods(goodInfos);
@@ -128,8 +128,8 @@ void IAPCtlShop::addUserBuyInfo(std::string commodityID){
 }
 
 void IAPCtlShop::clearUserBuyInfo(){
-    iap::IAPUserData::getInstance()->clearBuyInfo();
+    iapshop::IAPUserData::getInstance()->clearBuyInfo();
 }
 
 
-NS_IAP_END
+NS_IAPSHOP_END

+ 5 - 5
Classes/IAP/IAPCtlShop.hpp

@@ -11,14 +11,14 @@
 #include <stdio.h>
 #include "cocos2d.h"
 #include "IAPDefine.hpp"
-#include "IAPDelegate.hpp"
+#include "IAPShopDelegate.hpp"
 
 
 class IAPConf;
 class IAPCtlShopUI;
 class PBConfigData;
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 class IAPCtlShop : public cocos2d::Ref {
 public:
@@ -27,7 +27,7 @@ public:
     
     // 设置代理
     // delegate 代理的实现
-    void setDelegate(IAPDelegate* delegate);
+    void setDelegate(IAPShopDelegate* delegate);
 
     // 初始化普通商店卡片配置
     // cfgFN 配置文件名
@@ -91,12 +91,12 @@ private:
 private:
     static IAPCtlShop* _instance;
     
-    IAPDelegate* _delegate;
+    IAPShopDelegate* _delegate;
 
     IAPConf* _conf;
     PBConfigData* _pbConf;
 };
 
-NS_IAP_END
+NS_IAPSHOP_END
 
 #endif /* IAPCtlShop_hpp */

+ 4 - 4
Classes/IAP/IAPDefine.hpp

@@ -12,10 +12,10 @@
 #include <vector>
 #include "cocos2d.h"
 
-#define NS_IAP_BEGIN namespace iap {
-#define NS_IAP_END }
+#define NS_IAPSHOP_BEGIN namespace iapshop {
+#define NS_IAPSHOP_END }
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 // 卡片的实例
 class IAPCard {
@@ -47,6 +47,6 @@ typedef struct {
 } ShopRequirement;
 
 
-NS_IAP_END
+NS_IAPSHOP_END
 
 #endif /* IAPDefine_h */

+ 2 - 2
Classes/IAP/IAPDelegate.hpp → Classes/IAP/IAPShopDelegate.hpp

@@ -11,9 +11,9 @@
 #include <cocos2d.h>
 #include "IAPDefine.hpp"
 
-class IAPDelegate {
+class IAPShopDelegate {
 public:
-    virtual ~IAPDelegate(){}
+    virtual ~IAPShopDelegate(){}
     
     // 用户成功购买通知
     // buyInfo 购买信息 < 道具名称, 道具数量 >

+ 1 - 1
Classes/IAP/Shop/IAPCtlShopItem.cpp

@@ -10,7 +10,7 @@
 #include "IAPCtlArea23.hpp"
 #include "IAPProcess.hpp"
 #include "IAPSucessProcess.hpp"
-#include "IAPDelegate.hpp"
+#include "IAPShopDelegate.hpp"
 #include "RUUtils.h"
 
 #include "IAPConf.hpp"

+ 16 - 16
Classes/IAP/Shop/IAPCtlShopUI.cpp

@@ -63,7 +63,7 @@ void IAPCtlShopUI::clear() {
     _cb = nullptr;
 }
 
-bool IAPCtlShopUI::create(Node* pNode, IAPConf* cfg, iap::ShopRequirement& requirement,int placementId) {
+bool IAPCtlShopUI::create(Node* pNode, IAPConf* cfg, iapshop::ShopRequirement& requirement,int placementId) {
     redutils::Platform::getInstance()->reportLog("open iap");
     _cfg = cfg;
     _bUIShowing = true;
@@ -134,7 +134,7 @@ void IAPCtlShopUI::showSlideCardsByCoinsIn(cocos2d::Node *pNode, int stillNeedCo
     pNode->addChild(cardView);
 }
 
-bool IAPCtlShopUI::addAPlacement(const iap::IAPPlacement &plInfo){
+bool IAPCtlShopUI::addAPlacement(const iapshop::IAPPlacement &plInfo){
     // 如果该活动ID存在,则添加失败
     if(_placements.count(plInfo.id) != 0)return false;
     
@@ -153,7 +153,7 @@ void IAPCtlShopUI::removePlacement(const std::string &id){
     
 }
 
-bool IAPCtlShopUI::addCardToPlacement(const std::string &id, iap::IAPCard *card){
+bool IAPCtlShopUI::addCardToPlacement(const std::string &id, iapshop::IAPCard *card){
     if(_placements.count(id) == 0)return false;
     _placements[id].cards.push_back(card);
     return true;
@@ -198,7 +198,7 @@ void IAPCtlShopUI::_onNotifyDevelopment(const redutils::ReboltNotifyData& data)
     }
 }
 
-void IAPCtlShopUI::constructShopItem(bool bShowAll, iap::ShopRequirement& requirement) {
+void IAPCtlShopUI::constructShopItem(bool bShowAll, iapshop::ShopRequirement& requirement) {
     int index = 0;
     _tableData.setCascadeOpacity(true);
     _tableData.clear();
@@ -221,9 +221,9 @@ void IAPCtlShopUI::constructShopItem(bool bShowAll, iap::ShopRequirement& requir
     IAPConf::getInstance()->getAllGoods(_goodsInfo);
     // 获取版位信息
     int bigPackCount,smallPackCount; // 需要显示的礼包
-    auto iapCtlShop = iap::IAPCtlShop::createWith();
-    auto userBuyType = iap::IAPRunTimeData::getInstance()->getUserBuyType();
-    int leval = iap::IAPRunTimeData::getInstance()->getDeviceLevel();    //获取设备等级
+    auto iapCtlShop = iapshop::IAPCtlShop::createWith();
+    auto userBuyType = iapshop::IAPRunTimeData::getInstance()->getUserBuyType();
+    int leval = iapshop::IAPRunTimeData::getInstance()->getDeviceLevel();    //获取设备等级
     size_t placementCount = iapCtlShop->getPlacementCount();    // 获取活动礼包数量
     switch(leval){
         case 1:
@@ -292,16 +292,16 @@ void IAPCtlShopUI::constructShopItem(bool bShowAll, iap::ShopRequirement& requir
     }
     // 根据用户类型进行礼包排序
     switch (userBuyType) {
-        case iap::UserBuyType::NoShopping:
+        case iapshop::UserBuyType::NoShopping:
             sortGoods(true);
             break;
-        case iap::UserBuyType::LittleShopping:
+        case iapshop::UserBuyType::LittleShopping:
             sortGoods(true);
             break;
-        case iap::UserBuyType::NormalShopping:
+        case iapshop::UserBuyType::NormalShopping:
             sortGoods(true);
             break;
-        case iap::UserBuyType::LotShopping:
+        case iapshop::UserBuyType::LotShopping:
             sortGoods(false);
             break;
         default:
@@ -313,10 +313,10 @@ void IAPCtlShopUI::constructShopItem(bool bShowAll, iap::ShopRequirement& requir
         filterGoods(requirement);
     }
     // 判断是否为正常消费
-    if(userBuyType == iap::UserBuyType::NormalShopping && !bShowAll){
+    if(userBuyType == iapshop::UserBuyType::NormalShopping && !bShowAll){
         // (当前已按 大礼包 > 小礼包,金额小 > 金额大 的优先级排序)
         // 获取购买过的最大金额
-        float maxn = iap::IAPRunTimeData::getInstance()->getUserBuyMaxAmount();
+        float maxn = iapshop::IAPRunTimeData::getInstance()->getUserBuyMaxAmount();
         // 构建大礼包
         if(bigPackCount == 2){
             // 查找购买过的最高金额更高一级对应的常规礼包
@@ -538,7 +538,7 @@ void IAPCtlShopUI::constructShopItem(bool bShowAll, iap::ShopRequirement& requir
                     }
                     _allSizes.clear();
                     
-                    iap::ShopRequirement req;
+                    iapshop::ShopRequirement req;
                     req.coinsMin = 0;
                     constructShopItem(true, req);
                     
@@ -584,7 +584,7 @@ void IAPCtlShopUI::constructShopItem(bool bShowAll, iap::ShopRequirement& requir
     }, 0.05, "SCH_Update_Cells");
 }
 
-Node* IAPCtlShopUI::createPlacementUI(const iap::IAPPlacement& placement){
+Node* IAPCtlShopUI::createPlacementUI(const iapshop::IAPPlacement& placement){
     Node* node = Node::create();
     
     IAPCardView::sDotCfg cfg;
@@ -609,7 +609,7 @@ Node* IAPCtlShopUI::createPlacementUI(const iap::IAPPlacement& placement){
     return node;
 }
 
-void IAPCtlShopUI::filterGoods(iap::ShopRequirement &requirement){
+void IAPCtlShopUI::filterGoods(iapshop::ShopRequirement &requirement){
     std::map<int, bool> m;
     int cnt = 0;
     for(const auto& goodInfo : _goodsInfo){

+ 7 - 7
Classes/IAP/Shop/IAPCtlShopUI.hpp

@@ -24,7 +24,7 @@ public:
     static IAPCtlShopUI* getInstance();
     
     // 在指定节点内创建
-    bool create(cocos2d::Node* pNode, IAPConf* cfg, iap::ShopRequirement& requirement,int placementId = 1);
+    bool create(cocos2d::Node* pNode, IAPConf* cfg, iapshop::ShopRequirement& requirement,int placementId = 1);
     
     // 以滑动卡片的形式在某个节点中显示满足金币条件的所有商店卡片
     // pParent 父节点
@@ -33,14 +33,14 @@ public:
     
     // 添加一个商店版位
     // id 卡片id(添加版位时的id)
-    bool addAPlacement(const iap::IAPPlacement& plInfo);
+    bool addAPlacement(const iapshop::IAPPlacement& plInfo);
     
     // 删除一个商店版位
     // id 卡片id(添加版位时的id)
     void removePlacement(const std::string& id);
     
     // 给某个商店版位添加卡片
-    bool addCardToPlacement(const std::string& id, iap::IAPCard* card);
+    bool addCardToPlacement(const std::string& id, iapshop::IAPCard* card);
     
     // 给某个商店版位添加卡片
     bool removeCardToPlacement(const std::string id, int cardIndex = -1);
@@ -68,12 +68,12 @@ private:
 
     void _onNotifyDevelopment(const redutils::ReboltNotifyData& data);
     
-    void constructShopItem(bool bShowAll , iap::ShopRequirement& requirement);
+    void constructShopItem(bool bShowAll , iapshop::ShopRequirement& requirement);
     
-    Node* createPlacementUI(const iap::IAPPlacement& placement);
+    Node* createPlacementUI(const iapshop::IAPPlacement& placement);
     
     // 根据所需要的金币进行过滤筛选
-    void filterGoods(iap::ShopRequirement& requirement);
+    void filterGoods(iapshop::ShopRequirement& requirement);
     
     // 对Goods列表价格进行排序 true : 从小到大 false: 从大到小
     void sortGoods(bool flag);
@@ -96,7 +96,7 @@ private:
     std::function<void()> _cb = nullptr;
     int _placementId = 0;
     
-    std::map<std::string, iap::IAPPlacement> _placements;
+    std::map<std::string, iapshop::IAPPlacement> _placements;
     std::map<std::string, std::vector<Node*> > _indicators;
 };
 

+ 2 - 2
Classes/IAP/User/IAPRunTimeData.cpp

@@ -11,7 +11,7 @@
 
 #include "cocos2d.h"
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 IAPRunTimeData* IAPRunTimeData::_instance = nullptr;
 
@@ -96,4 +96,4 @@ UserBuyType IAPRunTimeData::getUserBuyType(){
     return UserBuyType::NormalShopping;
 }
 
-NS_IAP_END
+NS_IAPSHOP_END

+ 2 - 2
Classes/IAP/User/IAPRunTimeData.hpp

@@ -12,7 +12,7 @@
 
 #include "IAPDefine.hpp"
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 enum UserBuyType{
     NoShopping,         // 无购买行为
@@ -44,6 +44,6 @@ private:
     int _leval;
 };
 
-NS_IAP_END
+NS_IAPSHOP_END
 
 #endif /* IAPRunTimeData_hpp */

+ 2 - 2
Classes/IAP/User/IAPUserData.cpp

@@ -8,7 +8,7 @@
 #include "IAPUserData.hpp"
 #include "IAPConf.hpp"
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 IAPUserData* IAPUserData::_instance = nullptr;
 
@@ -93,4 +93,4 @@ std::vector<std::string> IAPUserData::loadVectorString(const std::string& key) {
 }
 
 
-NS_IAP_END
+NS_IAPSHOP_END

+ 2 - 2
Classes/IAP/User/IAPUserData.hpp

@@ -11,7 +11,7 @@
 #include <cocos2d.h>
 #include "IAPDefine.hpp"
 
-NS_IAP_BEGIN
+NS_IAPSHOP_BEGIN
 
 
 class IAPUserData {
@@ -47,6 +47,6 @@ private:
     std::vector<std::string> _buyInfos;    // 用户购买信息
 };
 
-NS_IAP_END
+NS_IAPSHOP_END
 
 #endif /* IAPUserData_hpp */

+ 2 - 2
Classes/IAPDelegateImpl.hpp

@@ -10,10 +10,10 @@
 
 #include <stdio.h>
 
-#include "IAPDelegate.hpp"
+#include "IAPShopDelegate.hpp"
 
 // 该类用于测试
-class IAPDelegateImpl : public IAPDelegate{
+class IAPDelegateImpl : public IAPShopDelegate{
 public:
     static IAPDelegateImpl* createWith();
     

+ 1 - 0
Classes/IAPTestCard.cpp

@@ -70,6 +70,7 @@ void IAPTestCard::onNotifyDevelopment(const redutils::ReboltNotifyData& data) {
     if (data.notify == "") {
         
     } else if (data.notify == "点击") {
+        
         accepted();
     }
 }

+ 1 - 1
Classes/IAPTestCard.hpp

@@ -16,7 +16,7 @@
 #include "IAPDefine.hpp"
 
 
-class IAPTestCard : public iap::IAPCard
+class IAPTestCard : public iapshop::IAPCard
 {
 public:
     IAPTestCard();

+ 6 - 6
Classes/TestScene.cpp

@@ -35,7 +35,7 @@ bool TestScene::init(){
     std::string cfgFN = "shop_5.json";
     std::string failFN = "purchaseBannerConfig.csv";
     
-    _iapShop = iap::IAPCtlShop::createWith();
+    _iapShop = iapshop::IAPCtlShop::createWith();
     auto delegate = IAPDelegateImpl::createWith();
     _iapShop->setDelegate(delegate);
     
@@ -46,7 +46,7 @@ bool TestScene::init(){
     
     // 第二个版位
     
-//    iap::IAPPlacement plInfo2;
+//    iapshop::IAPPlacement plInfo2;
 //    plInfo2.id = "2";
 //    IAPTestCard* testCard3 = new IAPTestCard();
 //    IAPTestCard* testCard4 = new IAPTestCard();
@@ -80,7 +80,7 @@ void TestScene::onNotifyDevelopment(const redutils::ReboltNotifyData& data){
     if(data.notify == "点击显示商店"){
         log("点击显示商店按钮");
         
-        iap::ShopRequirement shopRequirement;
+        iapshop::ShopRequirement shopRequirement;
         shopRequirement.coinsMin = 0;
         
         _iapShop->showInNode(this, shopRequirement);
@@ -93,7 +93,7 @@ void TestScene::onNotifyDevelopment(const redutils::ReboltNotifyData& data){
     }else if(data.notify == "点击失败"){
         log("点击失败时金币不够按钮");
         
-//        iap::ShopRequirement shopRequirement;
+//        iapshop::ShopRequirement shopRequirement;
 //        shopRequirement.coinsMin = 10000;
 //
 //        _iapShop->showInNode(this, shopRequirement);
@@ -108,7 +108,7 @@ void TestScene::onNotifyDevelopment(const redutils::ReboltNotifyData& data){
         auto editBox = dynamic_cast<REDEditBox*>(data.outNode);
         if(editBox){
             std::string text = editBox->getText();
-            iap::ShopRequirement req;
+            iapshop::ShopRequirement req;
             req.coinsMin = 0;
             try {
             req.coinsMin = stoi(text);
@@ -131,7 +131,7 @@ void TestScene::onNotifyDevelopment(const redutils::ReboltNotifyData& data){
 
         log("重置为低等级设备,清除用户购买信息,清除活动版位");
     }else if(data.notify == "点击添加一个活动版位"){
-        iap::IAPPlacement plInfo;
+        iapshop::IAPPlacement plInfo;
         plInfo.id = _placementIDs.size();
         
         _placementIDs.push_back(plInfo.id);

+ 1 - 1
Classes/TestScene.h

@@ -24,7 +24,7 @@ private:
     void onNotifyDevelopment(const redutils::ReboltNotifyData& data);
     void update(float dt);
     
-    iap::IAPCtlShop* _iapShop;
+    iapshop::IAPCtlShop* _iapShop;
     
     std::vector<std::string> _placementIDs;
     

+ 6 - 6
proj.ios_mac/demo.xcodeproj/project.pbxproj

@@ -180,7 +180,7 @@
 		2F15C5E32CB8F65A0057855D /* IAPCtlArea23.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IAPCtlArea23.hpp; sourceTree = "<group>"; };
 		2F15C5E42CB8F65A0057855D /* IAPCtlShopUI.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IAPCtlShopUI.hpp; sourceTree = "<group>"; };
 		2F15C5E52CB8F65A0057855D /* IAPCtlShopItem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IAPCtlShopItem.cpp; sourceTree = "<group>"; };
-		2F15C5E62CB8F65A0057855D /* IAPDelegate.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IAPDelegate.hpp; sourceTree = "<group>"; };
+		2F15C5E62CB8F65A0057855D /* IAPShopDelegate.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IAPShopDelegate.hpp; sourceTree = "<group>"; };
 		2F15C5E82CB8F65A0057855D /* IAPUserData.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IAPUserData.cpp; sourceTree = "<group>"; };
 		2F15C5E92CB8F65A0057855D /* IAPUserData.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IAPUserData.hpp; sourceTree = "<group>"; };
 		2F15C5EA2CB8F65A0057855D /* IAPCtlShop.hpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = IAPCtlShop.hpp; sourceTree = "<group>"; };
@@ -398,7 +398,7 @@
 			isa = PBXGroup;
 			children = (
 				2F15C5DD2CB8F65A0057855D /* IAPDefine.hpp */,
-				2F15C5E62CB8F65A0057855D /* IAPDelegate.hpp */,
+				2F15C5E62CB8F65A0057855D /* IAPShopDelegate.hpp */,
 				2F15C5EA2CB8F65A0057855D /* IAPCtlShop.hpp */,
 				2F15C5DE2CB8F65A0057855D /* IAPCtlShop.cpp */,
 				C19B68A12CD1E46D00536ED4 /* purchaseBanner */,
@@ -413,14 +413,14 @@
 		2F15C5DF2CB8F65A0057855D /* Shop */ = {
 			isa = PBXGroup;
 			children = (
-				2F15C5E32CB8F65A0057855D /* IAPCtlArea23.hpp */,
 				2F15C5E02CB8F65A0057855D /* IAPCtlArea23.cpp */,
-				2F15C5E42CB8F65A0057855D /* IAPCtlShopUI.hpp */,
+				2F15C5E32CB8F65A0057855D /* IAPCtlArea23.hpp */,
 				2F15C5E12CB8F65A0057855D /* IAPCtlShopUI.cpp */,
-				2F15C5E22CB8F65A0057855D /* IAPCtlShopItem.hpp */,
+				2F15C5E42CB8F65A0057855D /* IAPCtlShopUI.hpp */,
 				2F15C5E52CB8F65A0057855D /* IAPCtlShopItem.cpp */,
-				C18082272CCB3338009DE140 /* IAPCardView.hpp */,
+				2F15C5E22CB8F65A0057855D /* IAPCtlShopItem.hpp */,
 				C18082262CCB3338009DE140 /* IAPCardView.cpp */,
+				C18082272CCB3338009DE140 /* IAPCardView.hpp */,
 			);
 			path = Shop;
 			sourceTree = "<group>";