Tag: android

VoIP RTP从/到服务器(在Java中)到/从android流式传输

我的目标是在GSM / UMTS / LTE网络中建立一个即按即说聊天应用程序; 最初我想使用多播地址和点对点而不会使服务器过载; 不幸的是,经过深入调查,我发现GSM / UMTS / LTE网络中不允许多播,因此我必须使用服务器来反弹VoIP数据包。 我不太喜欢这个解决方案,因为我必须重载服务器,但我找不到更好的解决方案。 如果你有一个替代解决方案非常适应… 因此,我必须将VoIP从Android客户端发送到服务器(PC),反之亦然。 服务器是Java,它必须接收VoIP数据包然后将VoIP数据包发送给其他N个客户端; 服务器是VoIP数据包的保护者。 我开发了代码,但它不起作用; 我没有任何错误,只是我有非常糟糕的VoIP服务:我丢失了很多碎片,我听到的是非常多的声音……错误在哪里? 我想它应该在服务器代码中; 服务器只需获取数据包并重新发送它们,而不知道它们是RTP上的VoIP。 如下请见 我用来将VoIP数据包发送到服务器的代码。 它的工作原理是因为当我将它用于将VoIP数据包直接从Android发送到Android的个人呼叫时我没有问题; 在android中接收来自服务器的数据包的代码非常相似,所以我不重新复制它。 如你所见,我使用android.net.rtp。 我在Java服务器上用来反弹VoIP数据包的代码 先谢谢你,福斯托 //使用ANDROID代码向服务器发送VOIP //Attribute definition private static final AudioCodec myAudioCodec_COSTANTE = AudioCodec.PCMU ; private static final int myAudioGroupTX_COSTANTE = AudioGroup.MODE_NORMAL ; private static final int myAudioGroupRX_COSTANTE = AudioGroup.MODE_NORMAL ; private […]

Java httpPost成.aspforms

在Java中,如果我想在服务器上发送数据到表单,其中表单类型是: Log in User: Password: Save account 在这种情况下,我必须使用HttpPost方法,因为表单接受方法“post”,因为它在表单定义(初始化)中声明: 在我的例子(Android解决方案)我正在使用 __VIEWSTATE __EVENTTARGET __EVENTARGUMENT ctl00$tbUsername ctl00$tbPwd ctl00$chkRememberLogin ctl00$cmdLogin 值,因为它们是服务器发布post所需的一次。 在没有编程服务器的情况下,我在哪里可以找到服务器所需的内容? 我使用WireShark软件查看客户端和服务器之间的所有响应或传出请求,只需使用httpfilter来查看http事务。 然后使用任何浏览器以通常的方式在线登录,然后在WireShark中,您将看到浏览器和服务器之间的所有请求和响应。 通过已知的IP地址或主机地址找到您感兴趣的那个,然后复制您在任何事务上单击右键时找到的可读字节 。 因此,当您这样做时,您将发现您对服务器的请求必须如何以及需要哪些值。 回到编码(java): public HttpResponse httpPost1(String viewstateValue, String url, String username, String password) throws ConnectTimeoutException { try { // ——–post HttpPost httppost = new HttpPost(url); List nameValuePairs = new ArrayList(); nameValuePairs.add(new BasicNameValuePair(“__VIEWSTATE”, viewstateValue)); nameValuePairs.add(new […]

Google Drive SDK例外

我正在尝试运行以下代码(主要来自Stephen Wylie ): package com.googledrive.googledriveapp; // For Google Drive / Play Services // Version 1.1 – Added new comments & removed dead code // Stephen Wylie – 10/20/2012 import java.io.IOException; import java.util.ArrayList; import android.accounts.Account; import android.accounts.AccountManager; import android.app.Activity; import android.app.ProgressDialog; import android.content.Context; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.content.Intent; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; import […]

写入和读取多个对象到文件

我正在为android设计一个手写应用程序。 每次用户按下回车键时,我class LogInfo将信息( class LogInfo )写入日志文件。 之后,我想阅读存储的信息。 这是我的类的一部分,具有自定义写入方法: public class LogInfo implements Serializable { private static final long serialVersionUID = -5777674941129067422L; public static List strokes; public static List codes; // Only write and read methods shown private void writeObject(ObjectOutputStream stream) throws IOException { stream.defaultWriteObject(); stream.writeInt(strokes.size()); Point[][] pointsArray = null; for (int i = 0; i […]

连接到3G移动网络时获取Android设备的IP地址

当我连接到WiFi时,我可以获得Android手机的IP地址。 但是,在3G连接等移动网络上,是否仍然可以获取Android手机的IP地址? 如果是,请发布相同的代码。

用于加密/解密的Java SimpleCrypto类在Coldfusion 9和Java(Android)中产生不同的结果

我试图使用广泛使用的SimpleCrypto java类来加密Java(Android)中的字符串并解密ColdFusion 9中的字符串(反之亦然)。 我已将完全相同的SimpleCrypto类导入ColdFusion并将其命名为: sc = createObject(“java”, “SimpleCrypto”).init(); encrypted = sc.encrypt(myKey, “john”); 当用“apple”键加密字符串“john”时,它在CF中输出:9E90A36325AE4F4F7352D6469A7068A2 当我在Android中使用EXACT SAME类时: String key = “apple”; try { sEncrypted = SimpleCrypto.encrypt(key, “john”); Log.d(TAG, sEncrypted); } catch (Exception e) { e.printStackTrace(); } 日志输出:CBE2ADDBA9882F545DFEC1700E7CD518 不用说,我正在疯狂,因为这些结果是不同的。 有谁知道为什么在ColdFusion和Java中使用相同的确切代码会产生不同的结果? 任何帮助将不胜感激。 以下是SimpleCrypto.java的源代码: import java.security.SecureRandom; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; /** * Usage: * * String […]

Android Showcase查看如何使用?

很好的展示视图 我用这个: https://github.com/amlcurran/ShowcaseView 导入文件后,它会出错。 这是我的错误和improted .jar文件 错误说 在java中 R无法解析为变量 很有型 错误:检索项目的父项时出错:找不到与给定名称“Theme.Sherlock.Light”匹配的资源。 再次,风格 错误:错误:找不到与给定名称匹配的资源:attr’android:fontFamily’。 还有任何教程在我的项目中使用Showcase视图。 我找不到,我从github项目中没有理解。 不清楚。

如何在Android中以编程方式检查蓝牙网络共享状态

有没有办法找到Android 2.3+(2.3+之后的任何版本)以编程方式启用或禁用蓝牙网络共享? 我不是要求启用/禁用它,而只是要知道它当前是否已启用。

C ++ ifstream.getline()明显慢于Java的BufferedReader.readLine()?

我正在重写我的一个Android应用程序以利用NDK,每次打开一个1.5MB的文本文件(大约150k行)时,首先要做的事情之一就是把每一行放在一个数据中结构体。 当我使用Java的BufferedReader.readLine()执行此操作时,从SD卡读取文件大约需要2.5秒。 这是我用于此的代码: try { BufferedReader br = new BufferedReader(new FileReader(“/sdcard/testfile.txt”)); String thisLine; while ((thisLine = br.readLine()) != null) { Log.d(TAG, thisLine); } } catch (IOException e) { //Log error } 在ifstream中使用C ++需要更长的时间……对于同一个文件大约需要3分钟。 这是我在C ++中使用的代码: char buffer[256]; ifstream ifs; ifs.open(“/sdcard/testfile.txt”, ifstream::in); if (ifs.is_open()) { while (!ifs.eof()) { ifs.getline (buffer,100); LOGD(buffer); } } 我对C ++很生疏,但是对于增加的读取时间没有任何合理的解释。 有一段时间我以为它可能是LOGDfunction,但我尝试完全取消它,读取时间根本没有多大帮助。 […]

在String中将字符串数组的ArrayList从一个活动传递到另一个活动

我想在Android中将字符串数组的ArrayList从一个活动传递到另一个活动。 我如何使用intent或bundle ? 请考虑在这种情况下, intent.putStringArrayListExtra不起作用,因为它不适用于字符串数组。