小米和红米不请求推送token

This commit is contained in:
yangyuhao 2023-09-08 18:13:30 +08:00
parent c799e6702e
commit c53c61155a
5 changed files with 82 additions and 20 deletions

View File

@ -65,8 +65,8 @@ android {
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdkVersion 21 minSdkVersion 21
targetSdkVersion flutter.targetSdkVersion targetSdkVersion flutter.targetSdkVersion
versionCode 11 versionCode 13
versionName "1.1.0" versionName "1.1.2"
manifestPlaceholders = [ manifestPlaceholders = [
vivo_APPID: "105669716", vivo_APPID: "105669716",
vivo_APPKEY:"84f750207787376b310ca5b0d5969122", vivo_APPKEY:"84f750207787376b310ca5b0d5969122",

View File

@ -24,6 +24,9 @@
android:name="android.permission.READ_MEDIA_IMAGES"/> android:name="android.permission.READ_MEDIA_IMAGES"/>
<uses-permission <uses-permission
android:name="android.permission.READ_MEDIA_VIDEO"/> android:name="android.permission.READ_MEDIA_VIDEO"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <!-- 这个权限用于访问GPS定位 --> <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_FINE_LOCATION" />
<uses-permission android:name = "com.huawei.android.launcher.permission.CHANGE_BADGE "/> <uses-permission android:name = "com.huawei.android.launcher.permission.CHANGE_BADGE "/>

View File

@ -157,6 +157,7 @@ class TIMTextFieldLayoutNarrow extends StatefulWidget {
class _TIMTextFieldLayoutNarrowState class _TIMTextFieldLayoutNarrowState
extends TIMUIKitState<TIMTextFieldLayoutNarrow> { extends TIMUIKitState<TIMTextFieldLayoutNarrow> {
final TUISettingModel settingModel = serviceLocator<TUISettingModel>(); final TUISettingModel settingModel = serviceLocator<TUISettingModel>();
final ImagePicker _picker = ImagePicker(); final ImagePicker _picker = ImagePicker();
@ -838,12 +839,14 @@ class _TIMTextFieldLayoutNarrowState
return; return;
} }
await requestStoragePermission();
XFile? pickedFile; XFile? pickedFile;
String? thumbnailPath; // thumbnailPath String? thumbnailPath; // thumbnailPath
try { try {
pickedFile = await _picker.pickVideo( pickedFile = await _picker.pickVideo(
source: imageSource, source: imageSource, maxDuration: const Duration(seconds: 30)
); );
if (pickedFile == null) { if (pickedFile == null) {
return; return;
@ -938,20 +941,39 @@ class _TIMTextFieldLayoutNarrowState
if (!isOK) { if (!isOK) {
return; return;
} }
await requestStoragePermission();
try { try {
final XFile? pickedFile = await _picker.pickImage( final XFile? pickedFile = await _picker.pickImage(
source: ImageSource.camera, source: ImageSource.camera,
); );
if(null==pickedFile){
return;
}
widget.model.sendImageMessage( widget.model.sendImageMessage(
imagePath: pickedFile!.path, imagePath: pickedFile.path,
convID: widget.conversationID, convID: widget.conversationID,
convType: widget.conversationType, convType: widget.conversationType,
inputElement: context); inputElement: context);
var data = await DioManager.instance.get(url: Api.getAddTrialCount + "1"); DioManager.instance.get(url: Api.getAddTrialCount + "1");
} catch (e) {} } catch (e) {}
} }
//
Future<void> requestStoragePermission() async {
final status = await Permission.storage.request();
if (status.isGranted) {
//
} else if (status.isDenied) {
showOKToast("请打开存储权限。将为你带来更好的服务");
//
} else if (status.isPermanentlyDenied) {
showOKToast("请打开存储权限。将为你带来更优的服务");
//
//
}
}
_handleCameraAndMic() async { _handleCameraAndMic() async {
// // // //
// Map<PermissionGroup, PermissionStatus> permissions = await PermissionHandler().requestPermissions( // Map<PermissionGroup, PermissionStatus> permissions = await PermissionHandler().requestPermissions(

View File

@ -2,6 +2,7 @@ import 'dart:ffi';
import 'dart:io'; import 'dart:io';
import 'package:connectivity/connectivity.dart'; import 'package:connectivity/connectivity.dart';
import 'package:device_info/device_info.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/gestures.dart'; import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -198,21 +199,34 @@ class _CustomDialogState extends State<YesAgreementDialog> {
if (Platform.isAndroid) { if (Platform.isAndroid) {
initWxApi(); initWxApi();
} }
final CoreServicesImpl coreInstance = TIMUIKitCore.getInstance(); AndroidDeviceInfo androidInfo;
await ChannelPush.init((msg) {}); try {
DeviceInfoPlugin deviceInfo = DeviceInfoPlugin();
int? businessID = await TimUiKitPushPlugin.getBuzId(PushConfig.appInfo); androidInfo = await deviceInfo.androidInfo;
} catch (e) {
String token = await ChannelPush.getDeviceToken(); //
ChannelPush.uploadToken(); return true;
print("token=" + token);
if (token != "") {
V2TimCallback res = await coreInstance.setOfflinePushConfig(
token: token, businessID: businessID);
print("token=" + res.code.toString());
} }
if (androidInfo.brand == 'Xiaomi'||androidInfo.brand == 'Redmi') {
}else{
final CoreServicesImpl coreInstance = TIMUIKitCore.getInstance();
await ChannelPush.init((msg) {});
int? businessID = await TimUiKitPushPlugin.getBuzId(PushConfig.appInfo);
String token = await ChannelPush.getDeviceToken();
ChannelPush.uploadToken();
print("token=" + token);
if (token != "") {
V2TimCallback res = await coreInstance.setOfflinePushConfig(
token: token, businessID: businessID);
print("token=" + res.code.toString());
}
}
return true; return true;
} }

View File

@ -13,10 +13,12 @@ import 'package:circle_app/util/SharedPreferencesHelper.dart';
import 'package:circle_app/util/device.dart'; import 'package:circle_app/util/device.dart';
import 'package:circle_app/util/util.dart'; import 'package:circle_app/util/util.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:flutter_native_splash/flutter_native_splash.dart'; import 'package:flutter_native_splash/flutter_native_splash.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:flutter_smart_dialog/flutter_smart_dialog.dart'; import 'package:flutter_smart_dialog/flutter_smart_dialog.dart';
import 'package:get/get.dart'; import 'package:get/get.dart';
import 'package:image_picker/image_picker.dart';
import 'package:oktoast/oktoast.dart'; import 'package:oktoast/oktoast.dart';
import 'package:tencent_cloud_chat_uikit/business_logic/separate_models/tui_chat_separate_view_model.dart'; import 'package:tencent_cloud_chat_uikit/business_logic/separate_models/tui_chat_separate_view_model.dart';
import 'package:tencent_cloud_chat_uikit/data_services/core/core_services.dart'; import 'package:tencent_cloud_chat_uikit/data_services/core/core_services.dart';
@ -36,8 +38,29 @@ void main() {
WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized(); WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized();
FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding); FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding);
runApp(const MyApp()); runApp(const MyApp());
getLostData();
} }
Future<void> getLostData() async {
final ImagePicker picker = ImagePicker();
final LostDataResponse response = await picker.retrieveLostData();
if (response.isEmpty) {
return;
}
final List<XFile>? files = response.files;
if (files != null) {
_handleLostFiles(files);
} else {
_handleError(response.exception);
}
}
void _handleLostFiles(List<XFile> file) {}
Future<void> _handleError(dynamic error) async {
//
print('Error occurred: $error');
//
showToast('内存异常,请重新上传');
}
int IM_SDK_APP_ID = 1400799631; int IM_SDK_APP_ID = 1400799631;
String IOS_APP_ID = ""; String IOS_APP_ID = "";