我正在尝试为AR应用添加视频捕获功能.基本上记录屏幕上发生的事情,并将其保存为视频(允许用户共享).AR APP使用Vuforia-Unity SDK编写.我们在iOS平台上成功实现了这一点.
但是,在Android平台上做同样的事情我们遇到了很大的困难.(我们希望通过生根设备实现这一目标)
以下是我们的进展:
Vuforia程序使摄像机失灵,我无法访问视频流.
我尝试捕获每帧的screeshot,然后将它们组合成一些视频输出; 但帧率很差(小于1 fps).拍摄屏幕截图需要700毫秒.
我是从错误的方向思考的吗?任何帮助将深表感谢!非常感谢!艾萨克
以下是我的测试代码:
public void acquireScreenshot() {
DisplayMetrics metrics = new DisplayMetrics();
WindowManager WM = (WindowManager) MainActivity.this.getSystemService(Context.WINDOW_SERVICE);
Display display = WM.getDefaultDisplay();
display.getMetrics(metrics);
int height = metrics.heightPixels; // screen height
int width = metrics.widthPixels; // screen width
int pixelformat = display.getPixelFormat();
PixelFormat localPixelFormat1 = new PixelFormat();
PixelFormat.getPixelFormatInfo(pixelformat, localPixelFormat1);
int deepth = localPixelFormat1.bytesPerPixel;
byte[] arrayOfByte = new byte[height* width* deepth];
long tmp = System.currentTimeMillis();
try {
for(int i = 0 ; i < 10 …
Run Code Online (Sandbox Code Playgroud) 使用Eclipse Memory Analyzer我发现如果我在2个活动(例如A和B)之间来回切换,虽然调用了活动B的onDestroy方法,但GC从不将其从内存中删除,所以我在内存中有多个Activity B实例.我发现问题出在在YouTubePlayerFragment实例上调用的initialize方法中.这是代码:
YouTubePlayerFragment ytpf =(YouTubePlayerFragment) getFragmentManager().findFragmentById(R.id.youtube_fragment);
ytpf.initialize(DEVELOPER_KEY,this);
Run Code Online (Sandbox Code Playgroud)
this
是片段发生和实现的活动YouTubePlayer.OnInitializedListener
.
如何释放在initialize方法上传递的回调?
我试着打电话youtubePlayer.release()
但问题仍然存在.
我需要两个导航按钮,其文本是<
和>
.但是,编译器不允许我使用这些符号,即使我使用\<
和\>
.
无论如何将这些符号放入XML设计文件中?
请检查此代码示例.
HttpEntity getResponseEntity = getResponse.getEntity();
String message = EntityUtils.toString(getResponseEntity,"UTF-8");
//message = {"EntryPointJsonResult":"{\"NextTransactionUrl\":null,\"TraceId\":null,\"IsAuthorizationRequired\":false,\"IsError\":false,\"ErrorCode\":null,\"ErrorMessage\":null}"}
JSONObject object = new JSONObject(message);
String objectString = object.getString("EntryPointJsonResult");
//objectString = {\"NextTransactionUrl\":null,\"TraceId\":null,\"IsAuthorizationRequired\":false,\"IsError\":false,\"ErrorCode\":null,\"ErrorMessage\":null}
Run Code Online (Sandbox Code Playgroud)
这就是问题:我希望得到没有"EntryPointJsonResult"的"objectString".导致此信息在另一个响应中有所不同.
那么如何在没有像"EntryPointJsonResult"这样的特定键的情况下获取"objectString"呢?
我有一个服务器在浏览器上创建一个对象blob,我想在Android应用程序的WebView中下载它.我尝试将请求重定向到浏览器实例以及使用下载管理器执行此操作,但它们似乎都不起作用(即使我在Chrome中打开相同的页面,下载操作也在那里工作).
我尝试了以下代码,它抛出错误:
Android.content.ActivityNotFoundException:找不到处理Intent的活动{act = android.intent.action.VIEW dat = blob:https%3A // 111.111.111.111%3A8080/40b63131-63b1-4fa4-9451-c6297bbd111a"
编辑
Android.content.ActivityNotFoundException:找不到处理Intent的Activity {act = android.intent.action.VIEW dat = blob:http://digitalinsensu.com/0f0d6127-a0f1-44c3-af85-72f648258d6d
码:
mWebView.setDownloadListener(new DownloadListener() {
public void onDownloadStart(String url, String userAgent,String contentDisposition, String mimetype,long contentLength) {
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
}
});
Run Code Online (Sandbox Code Playgroud)
这会抛出java.lang.IllegalArgumentException:只能下载HTTP/HTTPS URIs错误:
mWebView.setDownloadListener(new DownloadListener() {
public void onDownloadStart(String url, String userAgent,String contentDisposition, String mimetype,long contentLength) {
DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url));
request.allowScanningByMediaScanner();
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "download");
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE);
dm.enqueue(request);
}
});
Run Code Online (Sandbox Code Playgroud)
我该如何下载blob?任何帮助,将不胜感激.
我使用3D对象并渲染它并通过扩展GLSurfaceView实现Renderer来显示它,问题是如何通过捏合和缩小来缩小输入.
以下是我的课
package com.example.objLoader;
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.nio.FloatBuffer;
import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
import android.content.Context;
import android.opengl.GLSurfaceView;
import android.opengl.GLSurfaceView.Renderer;
import android.opengl.GLU;
import android.os.Debug;
import android.view.KeyEvent;
import android.view.MotionEvent;
public class ManishRenderer extends GLSurfaceView implements Renderer {
/** Triangle instance */
private OBJParser parser;
private TDModel model;
/* Rotation values */
private float xrot; //X Rotation
private float yrot; //Y Rotation
/* Rotation speed values */
private float xspeed; //X Rotation Speed ( NEW )
private float yspeed; //Y Rotation Speed …
Run Code Online (Sandbox Code Playgroud) 在Backtrack 5r3上安装Google Chrome
但我得到错误dpkg:需要一个动作选项
root@bt:~# ls
Desktop google-chrome-stable_current_i386.deb
root@bt:~# dpkg .i google-chrome-stable_current_i386.deb
dpkg: need an action option
Type dpkg --help for help about installing and deinstalling packages [*];
Use `dselect' or `aptitude' for user-friendly package management;
Type dpkg -Dhelp for a list of dpkg debug flag values;
Type dpkg --force-help for a list of forcing options;
Type dpkg-deb --help for help about manipulating *.deb files;
Type dpkg --license for copyright license and lack of warranty (GNU GPL) [*].
Options …
Run Code Online (Sandbox Code Playgroud) 我正在为android设计一个基本的sudoko游戏.我想要一个4x4的表格,其中所有单元格都是正方形.
我正在尝试使用16个按钮TableLayout
.
我的方式看起来像这样
他们是rectange形状:(
我的xml
<TableLayout
android:id="@+id/tl"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:gravity="center" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center" >
<Button
android:id="@+id/button1"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="1" />
<Button
android:id="@+id/button2"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="2" />
<Button
android:id="@+id/button3"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="3" />
<Button
android:id="@+id/button4"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="4" />
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<Button
android:id="@+id/button5"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="5" />
<Button
android:id="@+id/button6"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="6" />
<Button
android:id="@+id/button7"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="7" />
<Button
android:id="@+id/button8"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="8" />
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" …
Run Code Online (Sandbox Code Playgroud) 我正在显示 17 个 CardView。
我正在使用 RecyclerView 来实现相同的目的。
每个CardView显示一个通用的数据(格式)。
根据从 JSON 文件接收的数据,卡片可能会显示一些附加行。。下图显示了 2 个 CardView(焦点清晰)显示附加数据,其余显示通用数据。
它显示正确。但是,当我向下滚动到视图底部时,最后一个 CardView 不会显示任何行,但它确实从我们在上面链接中看到的 2 个行之一复制一个并显示。[一次只能发布2个链接]
然后我滚动到顶部,它复制正确显示的两个 CardView 中的行,并分别在顶部 2 张卡上重复:
我尝试了什么?
许多类似的问题都有一个共同的解决方案。其中一个答案就在这里。问题是我不知道要申请什么条件以及在哪里申请。这是我的代码:
@Override
public void onBindViewHolder(DataObjectHolder holder, final int position) {
HashMap<Integer, ShoppingCartSummaryObject> dataItem = new HashMap<Integer, ShoppingCartSummaryObject>();
dataItem = mDataset.get(position);
TextView textViewComment = holder.textViewComment;
ShoppingCartSummaryObject obj = new ShoppingCartSummaryObject();
obj = (ShoppingCartSummaryObject) dataItem.get(position);
holder.textViewPackageType.setText(obj.getPackageType());
holder.textViewPackageCode.setText(obj.getPackageCode());
holder.textViewPackageDesc.setText(obj.getPackageDesc());
params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
try {
for (int i = 0; i < obj.getArrayListPart().size(); i++) { …
Run Code Online (Sandbox Code Playgroud) 我试图加载jsbundle(离线反应应用程序)时随机崩溃
mReactInstanceManager = ReactInstanceManager.builder().setApplication(mActivity.getApplication())
.setJSBundleFile(appPath)
.addPackage(mReactPackage).addPackage(new MyCustomReactPackage())
.setUseDeveloperSupport(false)//For performance use false
.setInitialLifecycleState(LifecycleState.RESUMED)
.setNativeModuleCallExceptionHandler(new NativeModuleCallExceptionHandler() {
@Override
public void handleException(Exception e) {
e.printStackTrace();
Logger.e(TAG,"Exception while opening app "+ Log.getStackTraceString(e));
}
})
.build();
reactRootView.startReactApplication(mReactInstanceManager, launchClassName, initialProps);
Run Code Online (Sandbox Code Playgroud)
堆栈跟踪:
LOCATION com.facebook.react.JSCConfig$1.a()
EXCEPTION java.lang.NoClassDefFoundError
MESSAGE com.facebook.react.bridge.WritableNativeMap
at com.facebook.react.JSCConfig$1.a()(null:14)
at com.facebook.react.ReactInstanceManager.k()(null:359)
at com.facebook.react.ReactInstanceManager.j()(null:353)
at com.facebook.react.ReactInstanceManager.c()(null:295)
at com.facebook.react.ReactRootView.a()(null:221)
at com.example.sdk.uidesign.fragments.AppFragment.b()(null:215)
at com.example.sdk.uidesign.ActivityV2.a()(null:1265)
at com.example.sdk.uidesign.adapter.AppsAdapter.a()(null:102)
at com.example.sdk.uidesign.adapter.AppsAdapter.a()(null:37)
at com.example.sdk.uidesign.a.e$a$1.onClick()(null:135)
at android.view.View.performClick()(View.java:4790)
at android.view.View$PerformClick.run()(View.java:19883)
at android.os.Handler.handleCallback()(Handler.java:739)
at android.os.Handler.dispatchMessage()(Handler.java:95)
at android.os.Looper.loop()(Looper.java:135)
at android.app.ActivityThread.main()(ActivityThread.java:5268)
at java.lang.reflect.Method.invoke()(Method.java:-2)
at java.lang.reflect.Method.invoke()(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()(ZygoteInit.java:902)
at …
Run Code Online (Sandbox Code Playgroud) android ×9
java ×2
xml ×2
blob ×1
json ×1
jsonobject ×1
linux ×1
memory-leaks ×1
opengl-es ×1
react-native ×1
reactjs ×1
rendering ×1
scroll ×1
symbols ×1
tablelayout ×1
video ×1
vuforia ×1
xml-layout ×1