最近在使用高通的FastCV,官方给出了一个Sample,可是第一次编译后出现以下错误信息:
android.view.WindowManager$BadTokenException: Unable to add window
....
差了很久都没有发现什么地方错,后来发现是官方的Sample中设定了屏幕分辨率,和我的手机不匹配
下面是官方的源代码:这是FastCVSample.java中的
protected void updatePreferences()
{
// Retrieve Preferences
SharedPreferences prefs =
PreferenceManager.getDefaultSharedPreferences( getBaseContext() );
// set the default camera resolution to WVGA
mDesiredWidth = 320;
mDesiredHeight = 240;
// retrieves user preference to set the threshold for Fast
// Corner Detector algorithm
int resIndex =
Integer.decode( prefs.getString( "camThreshold", "3" ) );
if( resIndex < mPrefOptsFastThreshold.length )
{
Log.e( TAG, "Configured FastThreshold: " + resIndex );
mPrefThreshold = mPrefOptsFastThreshold[ resIndex ];
Log.e( TAG, "Configured Threshold: " +
mPrefThreshold );
}
注意我标红色的地方,如果你的手机分辨率是800*640,那就没是,可是我的手机不好,只有320*240,改过来之后就可以了。
另外,在这个类中,还有一处
private void setupCamera()
{
// Now that the size is known, set up the camera parameters and begin
// the preview.
final Camera.Parameters parameters = mCamera.getParameters();
parameters.setPreviewFrameRate( 30 );
parameters.setPreviewSize( mDesiredWidth, mDesiredHeight );
parameters.setFocusMode( Camera.Parameters.FOCUS_MODE_INFINITY );
parameters.setWhiteBalance( Camera.Parameters.WHITE_BALANCE_FLUORESCENT );
//mCamera.setParameters( parameters );
mPreviewWidth = mCamera.getParameters().getPreviewSize().width;
mPreviewHeight = mCamera.getParameters().getPreviewSize().height;
同样注意标红出,对于android2.3+的机型来说,此处是要注释掉的。
分享到:
相关推荐
注意:PopupWindow组件的使用问题,PopupWindow是一个阻塞对话框,如果你直接在Activity创建的方法中显示它,则会报错:android.view.WindowManager$BadTokenException:Unable to add window -- token null is not ...
Android 中 android.view.WindowLeaked的解决办法 按字面了解,Window Leaked大概就是说一个窗体泄漏了,也就是我们常说的内存泄漏,为什么窗体会泄漏呢? 产生原因: 我们知道Android的每一个Activity都有个...
android13 WindowManager-Shell.jar
ERROR/AndroidRuntime(888): android.view.WindowManager$BadTokenException: Unable to add window -- token android.view.ViewRoot$W@44ef1b68 is not valid; is your activity running? 报错的意思大概就是说...
WindowManager属性详解:WindowManager.LayoutParams 是 WindowManager 接口的嵌套类;继承于 ViewGroup.LayoutParams 。 它的内容十分丰富。其实WindowManager.java的主要内容就是由这个类定义构成。
在开发中我们经常需要把我们的应用设置为全屏,有两种方法... import android.view.Window; import android.view.WindowManager; public class OpenGl_Lesson1 extends Activity { public void onCreate(Bundle sa
manager = (WindowManager) this.getSystemService(Context.WINDOW_SERVICE); params = SingleLayoutParams.getLayoutParams(); View lay = LayoutInflater.from(this).inflate(R.layout.mylinearlayout, ...
Android悬浮窗实现 使用WindowManager实现像电视顶端文字广告栏效果,开发工具:AS
FloatWindow readme-中文 Android自定义悬浮窗 原理很简单,就是借用了WindowManager这个管理类来实现的。 ...The principle is very simple, is to borrow WindowManager this management class
3 android:theme="@android:style/Theme.NoTitleBar.Fullscreen"> 然而,这两种方法都不能达到我们在视频播放过程中设置全屏与否的目的。因为它们都只能在初始化的时候决定全屏与否。那么我现在要说的就是第三种...
Window表示一个窗口的概念,Window是...Android中,所有的视图都是通过Window来呈现,不管是Activity、Dialog、还是Toast,它们的视图实际上都是附加在Window上,因此Window是实际View的直接管理者,单击事件由Window传
最近开发项目中,有个在屏幕上任意拖动的悬浮窗功能,其实就是利用 WindowManager的api来完成这个需求,具体的实现的功能如下: 1.自定义view import android.content.Context; import android.content.Intent; ...
view plaincopy to clipboardprint? package com.himi; import android.app.Activity; import android.os.Bundle; import android.view.Window; import android.view.WindowManager; public class ...
沉浸式全屏测试 沉浸式全屏模式的超级简单示例。...import android.view.WindowManager; public class ImmersiveFullscreenTestActivity extends Activity { @Override protected void onCreate(Bundle savedInsta
整理了Android中WindowManager.LayoutParams.type、WindowManager.LayoutParams.flags、WindowManager.LayoutParams.softInputMode等属性,含注解。
这个是一个悬浮框权限的判断代码,基本涵盖市面上主流手机的判断,可以直接下载使用,测试过,非常的好用
Window是一个抽象类,具体实现是 PhoneWindow 。不管是 Activity 、 Dialog 、 Toast 它们的视图都是附加在Window上的,因此Window实际上是View的直接管理者。
主要为大家详细介绍了Android利用WindowManager实现悬浮窗效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
核心在于WindowManager,通过它创建一个LayoutParams对象,然后利用该对象设置flag、gravity、xy坐标点。它提供三个方法:addView()、updateLayout()、removeView()。分别对应是添加view、更新view、移除view。主要...
import android.view.WindowManager; import android.view.SurfaceHolder.Callback; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.Toast; import android.widget....