微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > HotKnot在wifi p2p连接成功之后,要很长时间才真正开始传输数据

HotKnot在wifi p2p连接成功之后,要很长时间才真正开始传输数据

时间:10-02 整理:3721RD 点击:

[DESCRIPTION]

点击图库中的 连拍出来的图片,进行HotKnot分享,但是在hotknot传送过程中,连接后只看到接收方壮态栏上面有提
示,显示正在连接之后提示消失,下拉状态栏两台手机没有任何提示,过了40秒后才有接收界面弹出.中间没有任何提示
,让人感觉好像不能传一样!
分析:出现这样的情况是由于当前Gallery中的图片传送时,都是采用先压缩后传送的方式来进行的。而连拍图片由于
当前size大,需要压缩时间长,所以就会出现这么没有显示接收的时间.

[SOLUTION]

这部分可以根据实际要求,在这里加上一些提示和动画,下面这里是加上notification的demo
code,如果想要根据实际压缩进度进行提示的话,可以在ZipFileUtils.zipUris方法里加上提示。
[File Path]
alps\vendor\mediatek\proprietary\packages\apps\HotKnotBeam\src\mediatek\hotknotbeam\Hot
KnotBeamService.java
[Function]
private Uri createZipFile(Uri[] uris, FileUploadTask uploadTask)
[Code]
import android.app.Notification;
import android.app.NotificationManager;
private Uri createZipFile(Uri[] uris, FileUploadTask uploadTask) {
Uri uri = null;
NotificationManager notifyManager =
(NotificationManager) getSystEMService(Context.NOTIFICATION_SERVICE);
Notification.Builder builder = new Notification.Builder(mContext);
try {
builder.setContentTitle("File is preparing").setContentText("" + uris[0])
.setSmallIcon(R.drawable.stat_sys_upload).setProgress(0, 0, true);
notifyManager.notify(0, builder.build());
Log.i(TAG, "File ZIP is here");
File tmpFile = new File(StorageManagerEx.getDefaultPath() + File.separator
+ HotKnotBeamConstants.MAX_HOTKNOT_BEAM_TEMP_ZIP);
File baseFile = MimeUtilsEx.getFilePathFROMUri(uris[0], mContext);
String zipeName = ZipFileUtils.zipUris(uris, tmpFile, baseFile.getParentFile(),
mContext);
uploadTask.setUploadFileName(zipeName);
uri = Uri.fromFile(tmpFile).buildUpon().appendQueryParameter(
HotKnotBeamConstants.QUERY_ZIP,
HotKnotBeamConstants.QUERY_VALUE_YES).build();
} catch (Exception e) {
e.printStackTrace();
} finally {
notifyManager.cancel(0);
Log.i(TAG, "File ZIP is done");
}
return uri;
}

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top