Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android-以编程方式截图并共享到Facebook_Java_Android_Facebook_Android Intent_Android Emulator - Fatal编程技术网

Java Android-以编程方式截图并共享到Facebook

Java Android-以编程方式截图并共享到Facebook,java,android,facebook,android-intent,android-emulator,Java,Android,Facebook,Android Intent,Android Emulator,我有按钮,它的功能是截图并将其分享到Facebook。当我在我的Samsung with JellyBean OS设备中尝试它时,它工作得非常好,但是当我尝试BlueStack with JellyBean OS和CheeryMobile with Lollipop OS时,我检查了Logcat,发现了一些错误 我的代码 onClick按钮调用截图() private void takeScreenshot(){ 现在日期=新日期(); android.text.format.DateForma

我有
按钮
,它的功能是截图并将其分享到Facebook。当我在我的
Samsung with JellyBean OS
设备中尝试它时,它工作得非常好,但是当我尝试
BlueStack with JellyBean OS
CheeryMobile with Lollipop OS
时,我检查了
Logcat
,发现了一些错误

我的代码

onClick按钮调用截图()

private void takeScreenshot(){
现在日期=新日期();
android.text.format.DateFormat.format(“yyyy-MM-dd\u hh:MM:ss”,现在);
试一试{
//图像命名和包含sd卡的路径,附加您为文件选择的名称
字符串mPath=Environment.getExternalStorageDirectory().toString()+“/”+now+“.jpg”;
//创建位图屏幕截图
视图v1=getWindow().getDecorView().getRootView();
v1.setDrawingCacheEnabled(真);
位图Bitmap=Bitmap.createBitmap(v1.getDrawingCache());
v1.setDrawingCacheEnabled(假);
文件imageFile=新文件(mPath);
FileOutputStream outputStream=新的FileOutputStream(imageFile);
int质量=100;
compress(bitmap.CompressFormat.JPEG,质量,输出流);
outputStream.flush();
outputStream.close();
SharePhotoFaceBook(图像文件);
}捕获(可丢弃的)
e、 printStackTrace();
}
}
私有void SharePhotoFaceBook(文件imageFile){
Uri imageUri=Uri.fromFile(imageFile);
试一试{
image=MediaStore.Images.Media.getBitmap(this.getContentResolver(),imageUri);
}捕获(IOE异常){
e、 printStackTrace();
}
sdkinInitialize(getApplicationContext());
callbackManager=callbackManager.Factory.create();
List permissionNeeds=Arrays.asList(“发布动作”);
//此loginManager可帮助您消除向UI添加LoginButton的情况
loginManager=loginManager.getInstance();
loginManager.logInWithPublishPermissions(这是PermissionRequirements);
registerCallback(callbackManager,new FacebookCallback()){
@凌驾
成功时公共无效(LoginResult LoginResult){
试一试{
SharePhoto photo=新建SharePhoto.Builder()
.setBitmap(图像)
.setCaption(总分)
.build();
SharePhotoContent内容=新的SharePhotoContent.Builder()
.addPhoto(照片)
.build();
ShareApi.share(内容,空);
最终对话框=新对话框(ActivityShare.this);
对话框.requestWindowFeature(窗口.FEATURE\u无\u标题);
setContentView(R.layout.success_shared);
dialog.show();
按钮btnOk=(按钮)dialog.findViewById(R.id.btnOk);
btnOk.setOnClickListener(新建按钮.OnClickListener(){
@凌驾
公共void onClick(视图v){
dialog.dismise();
}
});
}捕获(例外e){
Log.e(“共享错误”,String.valueOf(e));
}
}
@凌驾
公开作废{
Log.w(“OnCancel”、“用户已取消”);
//System.out.println(“onCancel”);
}
@凌驾
public void onError(facebook异常){
最终对话框=新对话框(ActivityShare.this);
对话框.requestWindowFeature(窗口.FEATURE\u无\u标题);
setContentView(R.layout.success_shared);
TextView title=(TextView)dialog.findViewById(R.id.titleSuccess);
TextView desc=(TextView)dialog.findViewById(R.id.descriptionHere);
title.setText(“未成功”);
desc.setText(“出现问题,请检查您的internet连接并重试。”);
dialog.show();
按钮btnOk=(按钮)dialog.findViewById(R.id.btnOk);
btnOk.setOnClickListener(新建按钮.OnClickListener(){
@凌驾
公共void onClick(视图v){
dialog.dismise();
}
});
Log.e(“OnError”,String.valueOf(exception));
//System.out.println(“onError”);
}
});
}
LogCat错误

01-07 23:34:36.767 2024-2024/com.sample.app W/System.err: java.io.FileNotFoundException: /mnt/sdcard/Thu Jan 07 23:34:36 SGT 2016.jpg: open failed: EINVAL (Invalid argument)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.IoBridge.open(IoBridge.java:406)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.io.FileOutputStream.<init>(FileOutputStream.java:88)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.io.FileOutputStream.<init>(FileOutputStream.java:73)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.sample.app.ActivityShare.takeScreenshot(ActivityShare.java:225)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.sample.app.ActivityShare.access$000(ActivityShare.java:42)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.sample.app.ActivityShare$1.onClick(ActivityShare.java:103)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.view.View.performClick(View.java:3511)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.view.View$PerformClick.run(View.java:14105)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.os.Handler.handleCallback(Handler.java:605)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:92)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.os.Looper.loop(Looper.java:137)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:4424)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.lang.reflect.Method.invokeNative(Native Method)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.lang.reflect.Method.invoke(Method.java:511)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:825)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:592)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at dalvik.system.NativeStart.main(Native Method)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err: Caused by: libcore.io.ErrnoException: open failed: EINVAL (Invalid argument)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.Posix.open(Native Method)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.IoBridge.open(IoBridge.java:390)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:   ... 16 more
01-07 23:34:36.767 2024-2024/com.sample.app W/System.err:java.io.FileNotFoundException:/mnt/sdcard/Thu Jan 07 23:34:36 SGT 2016.jpg:open失败:EINVAL(参数无效)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at libcore.io.IoBridge.open(IoBridge.java:406)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at java.io.FileOutputStream.(FileOutputStream.java:88)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at java.io.FileOutputStream.(FileOutputStream.java:73)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at com.sample.app.ActivityShare.takeScreenshot(ActivityShare.java:225)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at com.sample.app.ActivityShare.access$000(ActivityShare.java:42)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at com.sample.app.ActivityShare$1.onClick(ActivityShare.java:103)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at-android.view.view.performClick(view.java:3511)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:at-android.view.view$PerformClick.run(view.java:14105)
01-07 23:34:36.7
01-07 23:34:36.767 2024-2024/com.sample.app W/System.err: java.io.FileNotFoundException: /mnt/sdcard/Thu Jan 07 23:34:36 SGT 2016.jpg: open failed: EINVAL (Invalid argument)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.IoBridge.open(IoBridge.java:406)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.io.FileOutputStream.<init>(FileOutputStream.java:88)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.io.FileOutputStream.<init>(FileOutputStream.java:73)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.sample.app.ActivityShare.takeScreenshot(ActivityShare.java:225)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.sample.app.ActivityShare.access$000(ActivityShare.java:42)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.sample.app.ActivityShare$1.onClick(ActivityShare.java:103)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.view.View.performClick(View.java:3511)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.view.View$PerformClick.run(View.java:14105)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.os.Handler.handleCallback(Handler.java:605)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.os.Handler.dispatchMessage(Handler.java:92)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.os.Looper.loop(Looper.java:137)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at android.app.ActivityThread.main(ActivityThread.java:4424)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.lang.reflect.Method.invokeNative(Native Method)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at java.lang.reflect.Method.invoke(Method.java:511)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:825)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:592)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at dalvik.system.NativeStart.main(Native Method)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err: Caused by: libcore.io.ErrnoException: open failed: EINVAL (Invalid argument)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.Posix.open(Native Method)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:     at libcore.io.IoBridge.open(IoBridge.java:390)
01-07 23:34:36.787 2024-2024/com.sample.app W/System.err:   ... 16 more