1、变更推送为阿里云推,清除云信IM以及推送内容;
2、消息页面全新改版; 3、部分微小Bug修复
This commit is contained in:
@@ -9,7 +9,7 @@
|
||||
#import "IfishDatabaseManager.h"
|
||||
#import "FMDatabase.h"
|
||||
#import "IfishDBHelper.h"
|
||||
#import "PushmassageModel.h"
|
||||
#import "PushmessageModel.h"
|
||||
#import "IfishInformations.h"
|
||||
@implementation IfishDatabaseManager
|
||||
{
|
||||
@@ -138,8 +138,8 @@ static NSString * const InformationsTableName = @"INFORMATIONSTABLE";
|
||||
|
||||
[queue inDatabase:^(FMDatabase *db) {
|
||||
//必须为对象类型
|
||||
PushmassageModel*massagemodel=(PushmassageModel*)model;
|
||||
BOOL isSccess = [db executeUpdate:sql,massagemodel.massageType,massagemodel.massageTitle,massagemodel.massageBody,massagemodel.createTime,massagemodel.deviceId,massagemodel.showName,massagemodel.userId];
|
||||
PushmessageModel*massagemodel=(PushmessageModel*)model;
|
||||
BOOL isSccess = [db executeUpdate:sql,massagemodel.pushType,massagemodel.pushTitle,massagemodel.pushContext,massagemodel.createTime,massagemodel.deviceId,massagemodel.showName,massagemodel.userId];
|
||||
if (!isSccess) {
|
||||
NSLog(@"insert error:%@",db.lastErrorMessage);
|
||||
|
||||
@@ -155,8 +155,8 @@ static NSString * const InformationsTableName = @"INFORMATIONSTABLE";
|
||||
FMDatabaseQueue *queue = [IfishDBHelper getDatabaseQueue];
|
||||
[queue inDatabase:^(FMDatabase *db) {
|
||||
//必须为对象类型
|
||||
PushmassageModel*massagemodel=(PushmassageModel*)model;
|
||||
BOOL isSccess = [db executeUpdate:sql,massagemodel.massageType,massagemodel.massageTitle];
|
||||
PushmessageModel*massagemodel=(PushmessageModel*)model;
|
||||
BOOL isSccess = [db executeUpdate:sql,massagemodel.pushType,massagemodel.pushTitle];
|
||||
if (!isSccess) {
|
||||
NSLog(@"delete error:%@",db.lastErrorMessage);
|
||||
|
||||
@@ -174,10 +174,10 @@ static NSString * const InformationsTableName = @"INFORMATIONSTABLE";
|
||||
NSString *sql=@"SELECT * FROM pushtable";
|
||||
FMResultSet*rs=[db executeQuery:sql];
|
||||
while ([rs next]) {
|
||||
PushmassageModel*massagemodel=[[PushmassageModel alloc] init];
|
||||
massagemodel.massageType=[rs stringForColumn:@"massageType"];
|
||||
massagemodel.massageTitle=[rs stringForColumn:@"massageTitle"];
|
||||
massagemodel.massageBody=[rs stringForColumn:@"massageBody"];
|
||||
PushmessageModel*massagemodel=[[PushmessageModel alloc] init];
|
||||
massagemodel.pushType=[rs stringForColumn:@"pushType"];
|
||||
massagemodel.pushTitle=[rs stringForColumn:@"pushTitle"];
|
||||
massagemodel.pushContext=[rs stringForColumn:@"pushContext"];
|
||||
massagemodel.createTime =[rs stringForColumn:@"createTime"];
|
||||
massagemodel.deviceId = [rs stringForColumn:@"deviceId"];
|
||||
massagemodel.showName = [rs stringForColumn:@"showName"];
|
||||
|
||||
@@ -77,7 +77,6 @@ alpha:1.0]
|
||||
#define MAINSCREEN_SCALE [[UIScreen mainScreen] scale]
|
||||
#define KWidth_Scale [UIScreen mainScreen].bounds.size.width/375.0f
|
||||
|
||||
#import "NTESGlobalMacro.h"
|
||||
#import "MyControl.h"
|
||||
#import "DataCenter.h"
|
||||
#import "UserModel.h"
|
||||
|
||||
@@ -21,12 +21,37 @@
|
||||
//用户ID 不能存在
|
||||
#define IFISH_USERIDNONE @"207"
|
||||
|
||||
typedef void (^WBCallBackSuccess)(NSDictionary *successDic);//正确返回
|
||||
typedef void (^WBCallBackFailed)(NSDictionary *errorDic);//连接服务器成功,返回其他错误码
|
||||
typedef void(^WBConnectServiceFailed)(void);//连接服务器失败
|
||||
|
||||
typedef NS_ENUM(NSUInteger, AnalyzeType) {
|
||||
kReqSuccess = 100,// 操作成功
|
||||
kReqSignError = 100001 ,// sign 错误,需特殊处理
|
||||
kReqParamaterEmpty = 100010 ,// 参数为空或其他错误
|
||||
kReqFunctionFail = 100012 ,// 操作失败
|
||||
kReqParamaterError = 100013,// 参数错误或其他错误
|
||||
kAccessDenied = 100014,// 禁止访问
|
||||
kLoginError = 100015 ,// 未登录或登录识别码错误,需特殊处理
|
||||
|
||||
|
||||
};
|
||||
|
||||
typedef NS_ENUM(NSInteger, RequestType){
|
||||
RequestTypePost = 1,
|
||||
RequestTypeGet = 2
|
||||
};
|
||||
|
||||
#define RESPONSE_CODE @"result" // 0:失败 100:成功 status
|
||||
#define RESPONSE_MESSAGE @"msg"
|
||||
#define RESPONSE_DATA @"data"
|
||||
#define RESPONSE_SUCCESS @"0" //服务器返回的数据成功信息1、成功,-1,异常,0,错误
|
||||
@interface AFNOHeaderHttpTool : NSObject
|
||||
+ (AFNOHeaderHttpTool *)sharedInstance;
|
||||
//POST请求
|
||||
-(void) postRequestWihtUrl:(NSString *)url
|
||||
params:(NSDictionary *)params
|
||||
success:(WBCallBackSuccess)success
|
||||
failure:(WBCallBackFailed)failure;
|
||||
/**
|
||||
* 发送一个请求 无请求头参数
|
||||
*
|
||||
@@ -37,13 +62,14 @@ typedef NS_ENUM(NSInteger, RequestType){
|
||||
* @param failure 请求失败后的回调(请将请求失败后想做的事情写到这个block中)
|
||||
* @param token "userId+timestamp+”ifish8”经MD5加密后生成的口令
|
||||
*/
|
||||
|
||||
|
||||
+(void) requestWihtMethod:(RequestType)
|
||||
methodType url : (NSString *)url
|
||||
params:(NSDictionary *)params
|
||||
success:(void (^)(id response))success
|
||||
failure:(void (^)(NSError *err))failure;
|
||||
|
||||
|
||||
/**
|
||||
* 保存自定义图标
|
||||
*/
|
||||
|
||||
@@ -8,8 +8,83 @@
|
||||
|
||||
#import "AFNOHeaderHttpTool.h"
|
||||
#import "AFNetworking.h"
|
||||
#import "SVProgressHUD.h"
|
||||
#define ContentType @"text/html"
|
||||
@implementation AFNOHeaderHttpTool
|
||||
- (instancetype)init
|
||||
{
|
||||
self = [super init];
|
||||
if (self) {
|
||||
// _manager = [AFHTTPSessionManager manager];
|
||||
// //请求超时时间为15秒
|
||||
// _manager.requestSerializer.timeoutInterval = 15;
|
||||
// _manager.requestSerializer = [AFJSONRequestSerializer serializer];
|
||||
// _manager.responseSerializer = [AFJSONResponseSerializer serializer];
|
||||
// // // 内容类型
|
||||
// _manager.responseSerializer.acceptableContentTypes = [NSSet setWithObjects:@"application/json",@"text/json",@"text/javascript",@"text/html", nil];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
+ (AFNOHeaderHttpTool *)sharedInstance
|
||||
{
|
||||
static AFNOHeaderHttpTool *_instance = nil;
|
||||
static dispatch_once_t once;
|
||||
dispatch_once(&once, ^{
|
||||
_instance = [[self alloc] init];
|
||||
|
||||
});
|
||||
return _instance;
|
||||
}
|
||||
//POST请求
|
||||
-(void) postRequestWihtUrl:(NSString *)url
|
||||
params:(NSDictionary *)params
|
||||
success:(WBCallBackSuccess)success
|
||||
failure:(WBCallBackFailed)failure{
|
||||
AFHTTPRequestOperationManager*manager=[AFHTTPRequestOperationManager manager];
|
||||
//此类中接口 无安全校验
|
||||
manager.responseSerializer=[AFHTTPResponseSerializer serializer];
|
||||
//POST请求
|
||||
|
||||
[manager POST:url parameters:params
|
||||
success:^(AFHTTPRequestOperation* operation, id responseObject) {
|
||||
[SVProgressHUD dismissWithDelay:0.3];
|
||||
id result=[NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];
|
||||
NSLog(@"获取数据 resalut = %@",result);
|
||||
if ([result isKindOfClass:[NSDictionary class]]) {
|
||||
// NSString *resCode = [NSString stringWithFormat:@"%@",[result objectForKey:RESPONSE_CODE]];//状态码
|
||||
// //返回数据正确 ,则解析到数据接收内容
|
||||
// if([resCode integerValue]==kReqSuccess)
|
||||
// {
|
||||
/**
|
||||
获取后台给定的正确码100,做逻辑处理
|
||||
*/
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
//直接显示成功信息
|
||||
success(result);
|
||||
});
|
||||
// }else{
|
||||
// /*
|
||||
// 获取后台给定的其他错误码,做逻辑处理(暂无数据等)
|
||||
// */
|
||||
// dispatch_async(dispatch_get_main_queue(), ^{
|
||||
// failure(result);
|
||||
// });
|
||||
// }
|
||||
}else{
|
||||
NSLog(@"json格式错误");
|
||||
}
|
||||
} failure:^(AFHTTPRequestOperation* operation, NSError* error) {
|
||||
//反馈错误信息(网络连接失败(服务器关停)等信息)
|
||||
if (error) {
|
||||
[SVProgressHUD showInfoWithStatus:@"请求数据失败"];
|
||||
}
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
//错误信息展示(其他相关错误处理在具体的类里进行)
|
||||
failure([self getErrorDict:error]);
|
||||
});
|
||||
}];
|
||||
}
|
||||
+(void) requestWihtMethod:(RequestType)
|
||||
methodType url : (NSString *)url
|
||||
params:(NSDictionary *)params
|
||||
@@ -22,7 +97,6 @@ methodType url : (NSString *)url
|
||||
|
||||
AFHTTPRequestOperationManager*manager=[AFHTTPRequestOperationManager manager];
|
||||
//此类中接口 无安全校验
|
||||
|
||||
manager.responseSerializer=[AFHTTPResponseSerializer serializer];
|
||||
|
||||
//#ifdef ContentType
|
||||
@@ -294,5 +368,11 @@ methodType url : (NSString *)url
|
||||
|
||||
}
|
||||
|
||||
|
||||
-(NSDictionary *)getErrorDict:( NSError *)error
|
||||
{
|
||||
NSMutableDictionary * resalut = InitObject(NSMutableDictionary);
|
||||
[resalut setObject:[NSString stringWithFormat:@"%ld",error.code] forKey:RESPONSE_CODE];
|
||||
[resalut setObject:error.domain forKey:RESPONSE_MESSAGE];
|
||||
return resalut;
|
||||
}
|
||||
@end
|
||||
|
||||
@@ -18,8 +18,6 @@
|
||||
#import "UDManager.h"
|
||||
//
|
||||
#import "CertificationShopModel.h"
|
||||
#import "NTESLoginManager.h"
|
||||
#import "NTESService.h"
|
||||
#import "IfishUserDefaultHelper.h"
|
||||
#import "IfishUserDataUnity.h"
|
||||
@implementation IFISHHttpTool
|
||||
|
||||
@@ -7,9 +7,7 @@
|
||||
//
|
||||
|
||||
#import "IfishUserDataUnity.h"
|
||||
#import "NTESLoginManager.h"
|
||||
#import "SVProgressHUD.h"
|
||||
#import "NTESService.h"
|
||||
#import "IfishMianTabViewController.h"
|
||||
#import "IfishUserDefaultHelper.h"
|
||||
#import "NSObject+LBLaunchImage.h"
|
||||
@@ -57,51 +55,10 @@
|
||||
|
||||
NSLog(@"userDic:%@",userDic);
|
||||
NSLog(@"登录成功");
|
||||
//登陆云信
|
||||
NSString *acount = [NSString stringWithFormat:@"%@",model.userId];
|
||||
[self doLoginWithAccount:acount addToken:model.neteaseToken];
|
||||
[self setAppTabRoot];
|
||||
|
||||
}
|
||||
|
||||
#pragma mark -登陆云信服务器
|
||||
- (void)doLoginWithAccount:(NSString *)acount addToken:(NSString *)token
|
||||
{
|
||||
|
||||
NSString *loginAccount = acount;
|
||||
NSString *loginToken = token;
|
||||
|
||||
//NIM SDK 只提供消息通道,并不依赖用户业务逻辑,开发者需要为每个APP用户指定一个NIM帐号,NIM只负责验证NIM的帐号即可(在服务器端集成)
|
||||
//用户APP的帐号体系和 NIM SDK 并没有直接关系
|
||||
//DEMO中使用 username 作为 NIM 的account ,md5(password) 作为 token
|
||||
//开发者需要根据自己的实际情况配置自身用户系统和 NIM 用户系统的关系
|
||||
|
||||
|
||||
[[[NIMSDK sharedSDK] loginManager] login:loginAccount
|
||||
token:loginToken
|
||||
completion:^(NSError *error) {
|
||||
[SVProgressHUD dismiss];
|
||||
if (error == nil)
|
||||
{
|
||||
LoginData *sdkData = [[LoginData alloc] init];
|
||||
sdkData.account = loginAccount;
|
||||
sdkData.token = loginToken;
|
||||
[[NTESLoginManager sharedManager] setCurrentLoginData:sdkData];
|
||||
|
||||
[[NTESServiceManager sharedManager] start];
|
||||
//NSInteger count = [[[NIMSDK sharedSDK] conversationManager] allUnreadCount];
|
||||
// NSLog(@"count%d",count);
|
||||
[[NSNotificationCenter defaultCenter] postNotificationName:IFISHIMLOGINSUCSESS object:nil];
|
||||
}
|
||||
else
|
||||
{
|
||||
NSString *toast = [NSString stringWithFormat:@"登录失败 code: %zd",error.code];
|
||||
[[UIApplication sharedApplication].keyWindow makeToast:toast ];
|
||||
}
|
||||
}];
|
||||
|
||||
}
|
||||
|
||||
#pragma mark - 自动登录
|
||||
|
||||
-(void)userAutologinSuccsess:(NSDictionary *)dataDic
|
||||
@@ -122,38 +79,6 @@
|
||||
[[IfishUserObsever sharedInstance] showLevelUpWith:gradeNum];
|
||||
[IfishUserDefaultHelper chageLevlelGrad:gradeNum];
|
||||
}
|
||||
|
||||
|
||||
//登陆云信 走自动登录
|
||||
LoginData *data = [[NTESLoginManager sharedManager] currentLoginData];
|
||||
NSString *account = [data account];
|
||||
NSString *token = [data token];
|
||||
//如果有缓存用户名密码推荐使用自动登录
|
||||
if ([account length] && [token length])
|
||||
{
|
||||
//自动登录
|
||||
//非强制模式
|
||||
//[[[NIMSDK sharedSDK] loginManager] autoLogin:account
|
||||
// token:token];
|
||||
//这里我们使用强制模式 即不考虑安全登录 多设备同帐号登陆
|
||||
|
||||
NIMAutoLoginData * LoginData = [[NIMAutoLoginData alloc] init];
|
||||
LoginData.account = account;
|
||||
LoginData.token = token;
|
||||
//强制模式 强制模式下的自动登录,服务器将不检查当前登录设备是否为上一次登录设备,安全性较低。但相对的更加方便,适合 IM 仅作为辅助模块的 App
|
||||
|
||||
LoginData.forcedMode = YES;
|
||||
[[[NIMSDK sharedSDK] loginManager] autoLogin:LoginData];
|
||||
[[NTESServiceManager sharedManager] start];
|
||||
|
||||
}
|
||||
else
|
||||
{ //注册登录
|
||||
NSString *acount = [NSString stringWithFormat:@"%@",model.userId];
|
||||
[self doLoginWithAccount:acount addToken:model.neteaseToken];
|
||||
}
|
||||
|
||||
//[self startLounchImg];
|
||||
//完成登陆验证开始 广告页倒计时
|
||||
[self setAdViewVC];
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ static char overlayKey;
|
||||
-(void)resetBackgroundImage{
|
||||
|
||||
[self setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
|
||||
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:NO];
|
||||
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
|
||||
|
||||
}
|
||||
|
||||
@@ -71,7 +71,7 @@ static char overlayKey;
|
||||
{
|
||||
[self setBackgroundImage:[UIImage imageNamed:@"blackbar_white.png"] forBarMetrics:UIBarMetricsDefault];
|
||||
|
||||
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:NO];
|
||||
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleDefault;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user