Articles of java的

从Android上的相机流式直播video

我正在尝试制作一个应用程序,它将使用TCP或UDP协议通过互联网从Android手机的摄像头流式传输video。 我目前能够将一个字节数组从Android手机传输到我的计算机,该计算机正在运行我用C#编写的服务器。 之前我通过网络发送.jpeg并以30 fps的速度显示它们,但这耗费了太多的带宽。 首先,从相机捕获图像的最佳方法是什么? 我在看…… onPictureTaken(byte[] data, Camera camera) 要么 onPreviewFrame (byte[] data, Camera camera) 我只对byte []数据感兴趣,然后对其进行编码/压缩,然后通过网络发送。 其次,我应该如何将这些帧转换为压缩video,这是一个可以通过网络流式传输的字节数组? 我不太关心video质量,我更关心减少带宽。 这是我想要做的,但我不需要高质量的video。 https://code.google.com/p/spydroid-ipcamera/

java.lang.RuntimeException:将结果ResultInfo {who = null,request = 1,result = -1,data = intent}传递给activity

在我的应用程序中,我点击了一个名为Pick Photo的按钮,它加载了图库。 当我单击图库中的图像时,应用程序强制关闭,在我的logcat中,我收到以下内容: java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { dat=content://media/external/images/media/3369 (has extras) }} to activity {cap.shot/cap.shot.LolcatActivity}: java.lang.NullPointerException at android.app.ActivityThread.deliverResults(ActivityThread.java:2655) at android.app.ActivityThread.handleSendResult(ActivityThread.java:2697) at android.app.ActivityThread.access$2000(ActivityThread.java:124) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:998) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:130) at android.app.ActivityThread.main(ActivityThread.java:3806) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:507) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.NullPointerException at cap.shot.LolcatView.loadFromUri(LolcatView.java:137) at cap.shot.LolcatActivity.loadPhoto(LolcatActivity.java:384) at cap.shot.LolcatActivity.onActivityResult(LolcatActivity.java:299) […]

Mapview上的按钮

我在我的MapActivity.java中创建一个OSMdroid mapview,我想添加按钮和popup窗口 – 我只知道如何在.xml中完成,但由于这个MapView没有使用任何.xml,我很困惑如何放置(我的java代码中的按钮。 @Override public void onCreate(final Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Setup base map final RelativeLayout rl = new RelativeLayout(this); CloudmadeUtil.retrieveCloudmadeKey(getApplicationContext()); final MapView osmv = new MapView(this, 256); myMapController = osmv.getController(); rl.addView(osmv, new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT)); osmv.setBuiltInZoomControls(true); osmv.setMultiTouchControls(true); myLocationoverlay = new MyLocationOverlay(this, osmv); //*snip* setup of map, mapcontrollers, tiles etc… osmv.getOverlays().add(tilesOverlay); osmv.getOverlays().add(myLocationoverlay); this.setContentView(rl); } […]

Google App Engine和Android(OAuth,C2DM或云消息传递)

作为该主板的众多用户,我想开发一款采用Google App Engine作为后端服务器的Android应用。 我需要用户使用他/她的Google帐户登录并将图像上传到GAE服务器。 这是我到目前为止所做的: 首先,我发现这个网站关于Android,GAE和C2DM消息 。 我努力按照教程,学习开发Android应用程序以及如何在GAE中创建Java服务器,但事实certificateC2DM现已弃用! 然后我开始学习使用OAuth授权的Java后端和一个名为Cloud Endpoints的GAE“实验”function,该function可以让我在处理Android + Google App Engine时更轻松。 我的问题是: 哪个是连接Android和GAE的最佳方式,具有授权和blobstore上传function? 使用OAuth + Cloud端点,C2DM消息传递或我未提及的任何其他接口技术?

在libgdx中使用通用Tween引擎添加补间?

我有一个sprite循环补间,就像一个空闲animation。 我想为它添加另一个补间,所以它们同时播放。 (例如,如果我的第一个补间移动它,而我的第二个补间移动它,我希望它向上和向右移动。) 但每当我玩第二个补间时,它似乎完全覆盖了第一个补间。 我究竟做错了什么? 这是我的代码: Tween.to(sprTurtle, SpriteAccessor.POS_XY, 0.4f) .waypoint(posTurtle[0] + (20 * density), posTurtle[1] + (20 * density)) .target(posTurtle[0] + (30 * density), posTurtle[1]) .ease(Quad.INOUT) .path(TweenPaths.catmullRom) .repeatYoyo(Tween.INFINITY, 0) .delay(0.1f) .start(tweenManager); Tween.to(sprTurtle, SpriteAccessor.POS_XY, 1f) .target(50, 50) .repeat(Tween.INFINITY, 0) .start(tweenManager);

如何将我的位置(经度和纬度)作为回复短信发送给其他人?

我有一个应用程序,我需要将他的位置(经度和纬度)发送给其他人从他那里收到短信。我会以某种方式得到我的位置(经度和纬度)并把它作为文本回复短信然后把它发送给其他人。但是现在我遇到了如何获取我的位置并将其作为文本回复sms的问题。现在我已经编写了一个代码,该代码在收到来自其他人的短信时发送回复消息。谁能告诉我如何获取我的位置并将其作为短信? 这是我发送回复邮件的代码: public void onReceive(Context context,Intent intent){ Intent m=new Intent(context, ReceivelocationActivity.class); PendingIntent pi=PendingIntent.getBroadcast(context, 0, m, 0); Bundle bundle = intent.getExtras(); SmsMessage[] msgs = null; String str = “”; String str2=””; String str3=””; String autoReplyToken = “Request_Accepted”; if (bundle != null) { //—retrieve the SMS message received— Object[] pdus = (Object[]) bundle.get(“pdus”); msgs = new SmsMessage[pdus.length]; […]

将数据从Android App上传到桌面程序

我对Android很新,所以如果我错过了一个明显的解决方案,我正在开发一个Android应用程序,用于记录各种数据,包括照片,希望这个收集的数据的目的是上传到一个桌面应用程序,可以执行某些特定于桌面的作业。 由于我打算在SQLite数据库中的应用程序中保存照片作为一个bytearray记录信息,我认为发送到服务器太过数据密集,而且我不希望桌面应用程序必然在服务器上,它应该是独立的。 我更喜欢使用USB连接,并允许从app sqlite db直接将数据USB上传到PC上的数据库,可能是sql server。 什么是最好的方法来解决这个问题? 可以用Android ADB来实现这个吗? 对此有任何帮助或建议将不胜感激。 问候

在Android中使用KeyStore存储密钥

我正在使用KeyStore来保护我的私钥但是当行: FileOutputStream fos = ctx.openFileOutput(“bs.keystore”, Context.MODE_PRIVATE); 执行我有这个例外: ‘java.lang.NullPointerException’. 我不明白问题出在哪里。 码: private Context ctx; public DataSec(Context ctx) { ctx = this.ctx; } public void genKey() throws Exception { SecretKey key = KeyGenerator.getInstance(“AES”).generateKey(); KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType()); ks.load(null, “clavedekey”.toCharArray()); PasswordProtection pass = new PasswordProtection(“fedsgjk”.toCharArray()); KeyStore.SecretKeyEntry skEntry = new KeyStore.SecretKeyEntry(key); ks.setEntry(“secretKeyAlias”, skEntry, pass); FileOutputStream fos = ctx.openFileOutput(“bs.keystore”, Context.MODE_PRIVATE); […]

便携式方法,以保证DateFormat的年份字段只有两位数

目前,我有 private ThreadLocal shortDateFormat = new ThreadLocal() { @Override protected DateFormat initialValue() { final DateFormat format = DateFormat.getDateInstance(DateFormat.SHORT); return format; } }; 使用我的Android 4.1,这为我提供了日期格式(在我的本地化。对于其他国家可能看起来不同) 19/07/2013 但是,有时我想要一个更短的版本,如19/07/13 我不想硬编码 DD / MM / YY 由于上述方式不能在不同国家之间移植。 有些国家,他们的月份是在约会之前。 有没有可行的方法来实现这一目标? p / s不仅是月/日订单。 可能还有其他问题。 例如,中国正在使用19-07-13或19-07-2013。 其他国家可能会有更多边缘案例,但我不知道。

在Android上使用mp4parser组合Mp4s

我只是想知道是否有人知道如何使用mp4音频文件并使用Android上的mp4parser将其覆盖到mp4video文件上。 我已经能够将一个video附加到另一个video,现在我只需要覆盖我对组合文件的原始mp4。 任何帮助,将不胜感激!