@@ -56,9 +56,9 @@ android { | |||||
// manifestPlaceholders = [ | // manifestPlaceholders = [ | ||||
// AMAP_KEY : "1fd4e93e3b4b13747da41f484c955fe2", /// 高德地图key | // AMAP_KEY : "1fd4e93e3b4b13747da41f484c955fe2", /// 高德地图key | ||||
// ] | // ] | ||||
// ndk { | |||||
// abiFilters 'armeabi-v7a' | |||||
// } | |||||
// ndk { | |||||
// abiFilters 'armeabi-v7a' | |||||
// } | |||||
multiDexEnabled true | multiDexEnabled true | ||||
manifestPlaceholders = [ | manifestPlaceholders = [ | ||||
JPUSH_PKGNAME : 'com.cyhd.henhoandroid', | JPUSH_PKGNAME : 'com.cyhd.henhoandroid', | ||||
@@ -75,7 +75,7 @@ android { | |||||
OPPO_APPKEY : "OP-cd9ece5049514019842f54d537068018", // OPPO平台注册的appkey | OPPO_APPKEY : "OP-cd9ece5049514019842f54d537068018", // OPPO平台注册的appkey | ||||
OPPO_APPID : "OP-30233397", // OPPO平台注册的appid | OPPO_APPID : "OP-30233397", // OPPO平台注册的appid | ||||
OPPO_APPSECRET: "OP-您的应用对应OPPO的APPSECRET",//OPPO平台注册的appsecret | |||||
OPPO_APPSECRET: "OP-4c16a9e57e614e72ae518fbb4a55f439",//OPPO平台注册的appsecret | |||||
// | // | ||||
// MEIZU_APPKEY:"MZ-您的应用对应的魅族appkey",//魅族平台注册的appkey | // MEIZU_APPKEY:"MZ-您的应用对应的魅族appkey",//魅族平台注册的appkey | ||||
@@ -1169,7 +1169,7 @@ | |||||
"translation_butler_tips": "您的实时贴身翻译,随时随地帮您解决语言不通", | "translation_butler_tips": "您的实时贴身翻译,随时随地帮您解决语言不通", | ||||
"choose_language": "请选择要翻译的语言", | "choose_language": "请选择要翻译的语言", | ||||
"translation_butler_rules": "呼叫管家需要预付H币,管家服务时长为5分钟", | "translation_butler_rules": "呼叫管家需要预付H币,管家服务时长为5分钟", | ||||
"translation_butler_scenes": "您当所在场景", | |||||
"translation_butler_scenes": "您所在场景", | |||||
"translation_butler_scenes_tips": "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!", | "translation_butler_scenes_tips": "根据大数据显示,选择了场景并描述问题的用户得到了更有效的帮助哦!", | ||||
"translation_butler_call": "呼叫管家", | "translation_butler_call": "呼叫管家", | ||||
"travel_my_location": "我的位置", | "travel_my_location": "我的位置", | ||||
@@ -6,6 +6,6 @@ export "FLUTTER_TARGET=/Users/random/code/flutter/project/hibok/lib/main.dart" | |||||
export "FLUTTER_BUILD_DIR=build" | export "FLUTTER_BUILD_DIR=build" | ||||
export "SYMROOT=${SOURCE_ROOT}/../build/ios" | export "SYMROOT=${SOURCE_ROOT}/../build/ios" | ||||
export "FLUTTER_FRAMEWORK_DIR=/Users/random/sdk/flutter_sdk/bin/cache/artifacts/engine/ios" | export "FLUTTER_FRAMEWORK_DIR=/Users/random/sdk/flutter_sdk/bin/cache/artifacts/engine/ios" | ||||
export "FLUTTER_BUILD_NAME=1.1.0" | |||||
export "FLUTTER_BUILD_NUMBER=15" | |||||
export "FLUTTER_BUILD_NAME=1.1.1" | |||||
export "FLUTTER_BUILD_NUMBER=16" | |||||
export "TRACK_WIDGET_CREATION=true" | export "TRACK_WIDGET_CREATION=true" |
@@ -803,7 +803,7 @@ | |||||
CODE_SIGN_IDENTITY = "Apple Development"; | CODE_SIGN_IDENTITY = "Apple Development"; | ||||
CODE_SIGN_STYLE = Automatic; | CODE_SIGN_STYLE = Automatic; | ||||
CURRENT_PROJECT_VERSION = 14; | CURRENT_PROJECT_VERSION = 14; | ||||
DEVELOPMENT_TEAM = ""; | |||||
DEVELOPMENT_TEAM = QJ9M3998Q6; | |||||
EMBEDDED_CONTENT_CONTAINS_SWIFT_CODE = YES; | EMBEDDED_CONTENT_CONTAINS_SWIFT_CODE = YES; | ||||
ENABLE_BITCODE = NO; | ENABLE_BITCODE = NO; | ||||
FRAMEWORK_SEARCH_PATHS = ( | FRAMEWORK_SEARCH_PATHS = ( | ||||
@@ -691,7 +691,7 @@ class _ChatPageState extends State<ChatPage> { | |||||
return Container( | return Container( | ||||
padding: EdgeInsets.fromLTRB(10, 10, 10, 10), | padding: EdgeInsets.fromLTRB(10, 10, 10, 10), | ||||
color: Colors.white, | |||||
decoration: BoxDecoration(color: Colors.white,border: Border(bottom: BorderSide(color: Colors.grey, width: .3))), | |||||
child: Row( | child: Row( | ||||
children: <Widget>[ | children: <Widget>[ | ||||
ClipRRect( | ClipRRect( | ||||
@@ -1404,10 +1404,15 @@ class _ChatPageItemState extends State<ChatPageItem> | |||||
double width = 130; | double width = 130; | ||||
double minWidth = 0; | double minWidth = 0; | ||||
if (textList.length > 0) { | |||||
if (textList.length > 0 && textList[curTextType].length>0) { | |||||
print('textList哒哒哒哒哒 ${textList[curTextType]}'); | |||||
width = _getTextWidth(textList[curTextType]) + 20; | width = _getTextWidth(textList[curTextType]) + 20; | ||||
width = min(width, Screen.width - 120); | width = min(width, Screen.width - 120); | ||||
if(width<130){ | |||||
width=130; | |||||
} | |||||
showMsg.add(Padding( | showMsg.add(Padding( | ||||
padding: EdgeInsets.symmetric(vertical: 5), | padding: EdgeInsets.symmetric(vertical: 5), | ||||
child: Divider( | child: Divider( | ||||
@@ -1369,11 +1369,15 @@ class _GroupChatPageItemState extends State<GroupChatPageItem> | |||||
double width = 130; | double width = 130; | ||||
double minWidth = 0; | double minWidth = 0; | ||||
if (textList.length > 0) { | |||||
if (textList.length > 0 && textList[curTextType].length>0) { | |||||
width = _getTextWidth(textList[curTextType]) + 20; | width = _getTextWidth(textList[curTextType]) + 20; | ||||
width = min(width, Screen.width - 120); | width = min(width, Screen.width - 120); | ||||
minWidth = max(width, 150); | minWidth = max(width, 150); | ||||
if(width<130){ | |||||
width=130; | |||||
} | |||||
showMsg.add(Padding( | showMsg.add(Padding( | ||||
padding: EdgeInsets.symmetric(vertical: 5), | padding: EdgeInsets.symmetric(vertical: 5), | ||||
child: Divider( | child: Divider( | ||||
@@ -161,7 +161,7 @@ class _RecordViewState extends State<RecordView> { | |||||
tipStr = I18n.of(context).voice_tips; | tipStr = I18n.of(context).voice_tips; | ||||
} | } | ||||
return Container( | |||||
return InkWell(onTap: (){},child: Container( | |||||
width: double.infinity, | width: double.infinity, | ||||
height: double.infinity, | height: double.infinity, | ||||
padding: EdgeInsets.only(top: 10, bottom: 20), | padding: EdgeInsets.only(top: 10, bottom: 20), | ||||
@@ -224,7 +224,7 @@ class _RecordViewState extends State<RecordView> { | |||||
} | } | ||||
}else | }else | ||||
{ | { | ||||
cancelRecorder(); | |||||
cancelRecorder(); | |||||
} | } | ||||
}, | }, | ||||
onLongPressEnd: (LongPressEndDetails details) { | onLongPressEnd: (LongPressEndDetails details) { | ||||
@@ -262,7 +262,7 @@ class _RecordViewState extends State<RecordView> { | |||||
child: Text(tipStr, textScaleFactor: 1.0,), | child: Text(tipStr, textScaleFactor: 1.0,), | ||||
) | ) | ||||
], | ], | ||||
)); | |||||
)),); | |||||
} | } | ||||
checkValideArea(Offset position) { | checkValideArea(Offset position) { | ||||
@@ -34,6 +34,7 @@ import 'package:shared_preferences/shared_preferences.dart'; | |||||
import 'package:chat/utils/my_bottom_navigation_bar.dart' as myBottm; | import 'package:chat/utils/my_bottom_navigation_bar.dart' as myBottm; | ||||
import 'friend_page.dart'; | import 'friend_page.dart'; | ||||
import 'group_chat_page.dart'; | |||||
class NavigationIconView { | class NavigationIconView { | ||||
final BottomNavigationBarItem item; | final BottomNavigationBarItem item; | ||||
@@ -361,79 +362,22 @@ class _HomeMainState extends State<HomeMain> { | |||||
I18n.of(context).me | I18n.of(context).me | ||||
]; | ]; | ||||
_navigationViews = [ | |||||
NavigationIconView( | |||||
title: _titles[2], | |||||
icon: IconData( | |||||
0xe67c, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
isShowdot: true, | |||||
iconSize: 29), | |||||
NavigationIconView( | |||||
title: _titles[0], | |||||
isShowdot: true, | |||||
iconMargin: EdgeInsets.only(top: 2), | |||||
type: 5, | |||||
icon: IconData( | |||||
0xe66e, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
iconSize: 26.5), | |||||
NavigationIconView( | |||||
title: _titles[1], | |||||
icon: IconData( | |||||
0xe656, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
isCenter: true, | |||||
iconSize: 31), | |||||
NavigationIconView( | |||||
title: _titles[1], | |||||
isShowdot: true, | |||||
icon: IconData( | |||||
0xe60b, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
type: 6, | |||||
iconSize: 26.5), | |||||
NavigationIconView( | |||||
title: _titles[3], | |||||
icon: IconData( | |||||
0xe67b, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
iconSize: 26.5), | |||||
]; | |||||
_pages = [ | |||||
RealTimeHelperPage(), | |||||
FriendPage(), | |||||
FindPage(), | |||||
ConversActionPage(), | |||||
// GroupChatListPage(), | |||||
ProfilePage( | |||||
userId: UserData().basicInfo.userId, | |||||
), | |||||
]; | |||||
// _navigationViews = [ | // _navigationViews = [ | ||||
// NavigationIconView( | // NavigationIconView( | ||||
// title: _titles[1], | |||||
// isShowdot: true, | |||||
// title: _titles[2], | |||||
// icon: IconData( | // icon: IconData( | ||||
// 0xe60b, | |||||
// 0xe67c, | |||||
// fontFamily: 'iconfont', | // fontFamily: 'iconfont', | ||||
// ), | // ), | ||||
// type: 1, | |||||
// iconSize: 26.5), | |||||
// isShowdot: true, | |||||
// iconSize: 29), | |||||
// NavigationIconView( | // NavigationIconView( | ||||
// title: _titles[0], | // title: _titles[0], | ||||
// isShowdot: true, | // isShowdot: true, | ||||
// iconMargin: EdgeInsets.only(top: 2), | // iconMargin: EdgeInsets.only(top: 2), | ||||
// type: 5, | // type: 5, | ||||
// icon: IconData( | // icon: IconData( | ||||
// 0xe663, | |||||
// 0xe66e, | |||||
// fontFamily: 'iconfont', | // fontFamily: 'iconfont', | ||||
// ), | // ), | ||||
// iconSize: 26.5), | // iconSize: 26.5), | ||||
@@ -445,17 +389,15 @@ class _HomeMainState extends State<HomeMain> { | |||||
// ), | // ), | ||||
// isCenter: true, | // isCenter: true, | ||||
// iconSize: 31), | // iconSize: 31), | ||||
// | |||||
// NavigationIconView( | // NavigationIconView( | ||||
// title: _titles[3], | |||||
// title: _titles[1], | |||||
// isShowdot: true, | // isShowdot: true, | ||||
// icon: IconData( | // icon: IconData( | ||||
// 0xe66e, | |||||
// 0xe60b, | |||||
// fontFamily: 'iconfont', | // fontFamily: 'iconfont', | ||||
// ), | // ), | ||||
// type: 4, | |||||
// type: 6, | |||||
// iconSize: 26.5), | // iconSize: 26.5), | ||||
// | |||||
// NavigationIconView( | // NavigationIconView( | ||||
// title: _titles[3], | // title: _titles[3], | ||||
// icon: IconData( | // icon: IconData( | ||||
@@ -466,16 +408,75 @@ class _HomeMainState extends State<HomeMain> { | |||||
// ]; | // ]; | ||||
// | // | ||||
// _pages = [ | // _pages = [ | ||||
// ConversActionPage(), | |||||
//// RealTimeHelperPage(), | |||||
// RealTimeHelperPage(), | |||||
// FriendPage(), | // FriendPage(), | ||||
// FindPage(), | // FindPage(), | ||||
//// ConversActionPage(), | |||||
// GroupChatListPage(), | |||||
// ConversActionPage(), | |||||
//// GroupChatListPage(), | |||||
// ProfilePage( | // ProfilePage( | ||||
// userId: UserData().basicInfo.userId, | // userId: UserData().basicInfo.userId, | ||||
// ), | // ), | ||||
// ]; | // ]; | ||||
_navigationViews = [ | |||||
NavigationIconView( | |||||
title: _titles[1], | |||||
isShowdot: true, | |||||
icon: IconData( | |||||
0xe60b, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
type: 1, | |||||
iconSize: 26.5), | |||||
NavigationIconView( | |||||
title: _titles[0], | |||||
isShowdot: true, | |||||
iconMargin: EdgeInsets.only(top: 2), | |||||
type: 5, | |||||
icon: IconData( | |||||
0xe663, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
iconSize: 26.5), | |||||
NavigationIconView( | |||||
title: _titles[1], | |||||
icon: IconData( | |||||
0xe656, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
isCenter: true, | |||||
iconSize: 31), | |||||
NavigationIconView( | |||||
title: _titles[3], | |||||
isShowdot: true, | |||||
icon: IconData( | |||||
0xe66e, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
type: 4, | |||||
iconSize: 26.5), | |||||
NavigationIconView( | |||||
title: _titles[3], | |||||
icon: IconData( | |||||
0xe67b, | |||||
fontFamily: 'iconfont', | |||||
), | |||||
iconSize: 26.5), | |||||
]; | |||||
_pages = [ | |||||
ConversActionPage(), | |||||
// RealTimeHelperPage(), | |||||
FriendPage(), | |||||
FindPage(), | |||||
// ConversActionPage(), | |||||
GroupChatListPage(), | |||||
ProfilePage( | |||||
userId: UserData().basicInfo.userId, | |||||
), | |||||
]; | |||||
} | } | ||||
@override | @override | ||||
@@ -290,6 +290,38 @@ class QuoteMsg extends $pb.GeneratedMessage { | |||||
void clearContent() => clearField(5); | void clearContent() => clearField(5); | ||||
} | } | ||||
class HumanTransFail extends $pb.GeneratedMessage { | |||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo('HumanTransFail', package: const $pb.PackageName('yl_pb')) | |||||
..a<$core.int>(1, 'money', $pb.PbFieldType.OU3) | |||||
..a<$core.int>(2, 'ticket', $pb.PbFieldType.OU3) | |||||
..hasRequiredFields = false | |||||
; | |||||
HumanTransFail._() : super(); | |||||
factory HumanTransFail() => create(); | |||||
factory HumanTransFail.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r); | |||||
factory HumanTransFail.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r); | |||||
HumanTransFail clone() => HumanTransFail()..mergeFromMessage(this); | |||||
HumanTransFail copyWith(void Function(HumanTransFail) updates) => super.copyWith((message) => updates(message as HumanTransFail)); | |||||
$pb.BuilderInfo get info_ => _i; | |||||
@$core.pragma('dart2js:noInline') | |||||
static HumanTransFail create() => HumanTransFail._(); | |||||
HumanTransFail createEmptyInstance() => create(); | |||||
static $pb.PbList<HumanTransFail> createRepeated() => $pb.PbList<HumanTransFail>(); | |||||
static HumanTransFail getDefault() => _defaultInstance ??= create()..freeze(); | |||||
static HumanTransFail _defaultInstance; | |||||
$core.int get money => $_get(0, 0); | |||||
set money($core.int v) { $_setUnsignedInt32(0, v); } | |||||
$core.bool hasMoney() => $_has(0); | |||||
void clearMoney() => clearField(1); | |||||
$core.int get ticket => $_get(1, 0); | |||||
set ticket($core.int v) { $_setUnsignedInt32(1, v); } | |||||
$core.bool hasTicket() => $_has(1); | |||||
void clearTicket() => clearField(2); | |||||
} | |||||
class ChatSendReq extends $pb.GeneratedMessage { | class ChatSendReq extends $pb.GeneratedMessage { | ||||
static final $pb.BuilderInfo _i = $pb.BuilderInfo('ChatSendReq', package: const $pb.PackageName('yl_pb')) | static final $pb.BuilderInfo _i = $pb.BuilderInfo('ChatSendReq', package: const $pb.PackageName('yl_pb')) | ||||
..e<ChatChannelType>(1, 'channelType', $pb.PbFieldType.OE, ChatChannelType.Session, ChatChannelType.valueOf, ChatChannelType.values) | ..e<ChatChannelType>(1, 'channelType', $pb.PbFieldType.OE, ChatChannelType.Session, ChatChannelType.valueOf, ChatChannelType.values) | ||||
@@ -148,6 +148,14 @@ const QuoteMsg$json = const { | |||||
], | ], | ||||
}; | }; | ||||
const HumanTransFail$json = const { | |||||
'1': 'HumanTransFail', | |||||
'2': const [ | |||||
const {'1': 'Money', '3': 1, '4': 1, '5': 13, '10': 'Money'}, | |||||
const {'1': 'Ticket', '3': 2, '4': 1, '5': 13, '10': 'Ticket'}, | |||||
], | |||||
}; | |||||
const ChatSendReq$json = const { | const ChatSendReq$json = const { | ||||
'1': 'ChatSendReq', | '1': 'ChatSendReq', | ||||
'2': const [ | '2': const [ | ||||
@@ -9,18 +9,18 @@ enum ChatChannelType { | |||||
} | } | ||||
enum ChatType { | enum ChatType { | ||||
TextChatType = 0; //文字聊天 | |||||
ImageChatType = 1; //图片 | |||||
ShortVoiceChatType = 2; //短语音 | |||||
ShortVideoChatType = 3; //短视频 | |||||
RealtimeCallVoiceType = 4; //实时通话-语音 | |||||
RealtimeCallVideoType = 5; //实时通话-视频 | |||||
RedWalletChatType = 6; //红包 | |||||
PlaceChatType = 7; //地址类型 | |||||
EmoticonType = 8; //表情 | |||||
GroupChatNoticeType = 9; //群公告类型 | |||||
GiftChatType = 10; //礼物聊天类型 | |||||
FileChatType = 11; //文件聊天类型 | |||||
TextChatType = 0; //文字聊天 | |||||
ImageChatType = 1; //图片 | |||||
ShortVoiceChatType = 2; //短语音 | |||||
ShortVideoChatType = 3; //短视频 | |||||
RealtimeCallVoiceType = 4; //实时通话-语音 | |||||
RealtimeCallVideoType = 5; //实时通话-视频 | |||||
RedWalletChatType = 6; //红包 | |||||
PlaceChatType = 7; //地址类型 | |||||
EmoticonType = 8; //表情 | |||||
GroupChatNoticeType = 9; //群公告类型 | |||||
GiftChatType = 10; //礼物聊天类型 | |||||
FileChatType = 11; //文件聊天类型 | |||||
} | } | ||||
enum RedWalletState { | enum RedWalletState { | ||||
@@ -88,6 +88,12 @@ message QuoteMsg{ | |||||
optional string Content = 5; //消息附件地址 | optional string Content = 5; //消息附件地址 | ||||
} | } | ||||
//翻译失败返回消息结果 | |||||
message HumanTransFail { | |||||
optional uint32 Money = 1; //退回h币 | |||||
optional uint32 Ticket = 2; //退回翻译券 | |||||
} | |||||
//-------------------------------------------------------------------------消息-------------------------------------------------------------------------------------------------- | //-------------------------------------------------------------------------消息-------------------------------------------------------------------------------------------------- | ||||
// MsgId=1 聊天消息发送请求 | // MsgId=1 聊天消息发送请求 | ||||
message ChatSendReq { | message ChatSendReq { | ||||
@@ -418,7 +418,7 @@ packages: | |||||
name: flutter_inapp_purchase | name: flutter_inapp_purchase | ||||
url: "https://pub.flutter-io.cn" | url: "https://pub.flutter-io.cn" | ||||
source: hosted | source: hosted | ||||
version: "2.0.6" | |||||
version: "2.0.4" | |||||
flutter_local_notifications: | flutter_local_notifications: | ||||
dependency: "direct main" | dependency: "direct main" | ||||
description: | description: | ||||
@@ -1,7 +1,7 @@ | |||||
name: chat | name: chat | ||||
description: A new Flutter project. | description: A new Flutter project. | ||||
#修改版本号后get-clean | #修改版本号后get-clean | ||||
version: 1.1.0+15 | |||||
version: 1.1.1+16 | |||||
environment: | environment: | ||||
sdk: ">=2.1.0 <3.0.0" | sdk: ">=2.1.0 <3.0.0" | ||||