



下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
【移動應(yīng)用開發(fā)技術(shù)】如何解決Android微信分享大圖遇到的問題
起因:/upload/information/20200623/125/121243.png分享圖片代碼:public
void
WXsharePic(String
transaction,
final
boolean
isSession,
Bitmap
bitmap)
{
//初始化WXImageObject和WXMediaMessage對象
WXImageObject
imageObject
=
new
WXImageObject(bitmap);
WXMediaMessage
msg
=
new
WXMediaMessage();
msg.mediaObject
=
imageObject;
//設(shè)置縮略圖
Bitmap
scaledBitmap
=
Bitmap.createScaledBitmap(bitmap,
200,
200,
true);
bitmap.recycle();
msg.thumbData
=
getBitmapByte(scaledBitmap);
//構(gòu)造一個Req
SendMessageToWX.Req
req
=
new
SendMessageToWX.Req();
req.transaction
=
transaction
+
Long.toString(System.currentTimeMillis());
req.message
=
msg;
//表示發(fā)送給朋友圈
WXSceneTimeline
表示發(fā)送給朋友
WXSceneSession
req.scene
=
isSession
?
SendMessageToWX.Req.WXSceneSession
:
SendMessageToWX.Req.WXSceneTimeline;
//調(diào)用api接口發(fā)送數(shù)據(jù)到微信
api.sendReq(req);
}解決過程:想法一:/upload/information/20200623/125/121244.png想法二:public
static
byte[]
bitmap2Bytes(Bitmap
bitmap,
int
maxkb)
{
ByteArrayOutputStream
output
=
new
ByteArrayOutputStream();
press(Bitmap.CompressFormat.PNG,
100,
output);
int
options
=
100;
while
(output.toByteArray().length
>
maxkb&&
options
!=
10)
{
output.reset();
//清空output
press(Bitmap.CompressFormat.JPEG,
options,
output);//這里壓縮options%,把壓縮后的數(shù)據(jù)存放到output中
options
-=
10;
}
return
output.toByteArray();
}將壓縮率遞減改為1%,并且maxkb設(shè)置為500KB時,就沒問題了!想法三:而Intent傳值有大小限制,最大只能512KB!解決過程:public
void
WXsharePic(String
transaction,
final
boolean
isSession,
Bitmap
bitmap,
String
path)
{
//初始化WXImageObject和WXMediaMessage對象
WXImageObject
imageObject;
if
(!StringUtil.isBlank(path))
{
imageObject
=
new
WXImageObject();
imageObject.setImagePath(path);
}
else
{
imageObject
=
new
WXImageObject(bitmap);
}
WXMediaMessage
msg
=
new
WXMediaMessage();
msg.mediaObject
=
imageObject;
//設(shè)置縮略圖
Bitmap
scaledBitmap
=
Bitmap.createScaledBitmap(bitmap,
200,
200,
true);
bitmap.recycle();
msg.thumbData
=
getBitmapByte(scaledBitmap);
//構(gòu)造一個Req
SendMessageToWX.Req
req
=
new
SendMessageToWX.Req();
req.transaction
=
transaction
+
Long.toString(System.currentTimeMillis());
req.message
=
msg;
//表示發(fā)送給朋友圈
WXSceneTimeline
表示發(fā)送給朋友
WXSceneSession
req.scene
=
isSession
?
SendMessageToWX.Req.WXSceneSession
:
SendMessageToWX.Req.WXSceneTimeline;
//調(diào)用api接口發(fā)送數(shù)據(jù)到微信
api.sendReq(req);
}private
void
shareToMoment()
{
final
Bitmap
sharePicture
=
getBitmapByView(svShare);
AndPermission.with(this)
.permission(Permission.WRITE_EXTERNAL_STORAGE)
.onGranted(new
Action()
{
@Override
public
void
onAction(List<String>
permissions)
{
String
path
=
saveImageToGallery(sharePicture);
WXsharePic("he"
+
System.currentTimeMillis(),
true,
sharePicture,
path);
}
})
.onDenied(new
Action()
{
@Override
public
void
onAction(@NonNull
List<String>
permissions)
{
Log.e("Activity",
"權(quán)限申請失敗");
}
})
.start();
}public
String
saveImageToGallery(Bitmap
bmp)
{
//
首先保存圖片
String
storePath
=
Environment.getExternalStorageDirectory().getAbsolutePath()
+
File.separator
+
"dearxy";
File
appDir
=
new
File(storePath);
if
(!appDir.exists())
{
appDir.mkdir();
}
String
fileName
=
System.currentTimeMillis()
+
".jpg";
File
file
=
new
File(appDir,
fileName);
try
{
FileOutputStream
fos
=
new
FileOutputStream(file);
//通過io流的方式來壓縮保存圖片
p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 倉儲設(shè)備租賃合同協(xié)議書
- 人工智能技術(shù)應(yīng)用研發(fā)合作協(xié)議
- 鋼筋焊接施工承包合同
- 工程承包合同單價合同
- 企業(yè)信息化戰(zhàn)略規(guī)劃與實施
- 工廠場地租賃合同
- 電子商務(wù)購銷合同
- 數(shù)據(jù)安全與信息保密服務(wù)協(xié)議
- 血液(第二課時)課件2024-2025學(xué)年北師大版生物七年級下冊
- 關(guān)于調(diào)整辦公環(huán)境的申請通知
- 部編版道德與法治四年級下冊第四單元《感受家鄉(xiāng)文化關(guān)心家鄉(xiāng)發(fā)展》大單元作業(yè)設(shè)計
- 軟件測試PPT完整全套教學(xué)課件
- 化學(xué)基礎(chǔ)課程標準
- RBA社會責(zé)任商業(yè)聯(lián)盟準則(管理手冊+程序+記錄+培訓(xùn))
- 2022-2023學(xué)年遼寧省名校聯(lián)盟高二(下)聯(lián)考語文試卷(3月份)及答案解析
- 附表耶魯抽動程度綜合量表
- 貨物驗收單表格模板
- Word-A4信紙(老信紙格式)
- 4.四川能投集團匯報PPT(V3.01)-1
- 教學(xué)設(shè)計 心字底寫法
- 幼兒園入園體檢表新表
評論
0/150
提交評論