我上周刚刚通过Mac App Store将Xcode更新到4.3版,并发现我无法再在iOS 3.x设备上进行调试.我有运行iOS 3.1.3的iPhone 3G和运行iOS 3.2的第一代iPad.
在两个设备上,似乎Xcode 4.3安装了应用程序并尝试启动应用程序.该应用程序显示启动画面但从未完成启动.调试器输出窗口中没有任何错误消息或消息.我唯一的线索是,当我按下暂停按钮时,我可以看到设备/ Xcode卡在以下功能中:addimagesToAllImages似乎与Apple的DYLD有关.
调试在iOS 5设备上运行良好,并在之前的Xcode 4.2安装上工作.我重启了我的Mac,iOS 3.x设备,没有改变行为,包括清除所有缓存.
任何人都有任何关于发生了什么的想法?谢谢您的帮助.
对于我的应用程序,我需要来自本地网络和Internet的数据.本地网络(Wifi)没有连接到互联网,因此我必须使用移动连接(例如3G).但每当我连接到本地网络时,3G都会停止.询问三星服务后,无法在UI中更改它.但他们无法告诉我,是否有可编程接口.
内部有一个移动接入点,因此有一种方法可以将Wifi设备连接到互联网(这意味着两者都可以通过这种方式同时实现wifi和3G连接).但对于我的应用程序,手机/标签必须连接到现有网络并使用3G进行互联网.
所以这是我的问题.
有没有办法连接到现有网络并同时使用3G上网?
是否可以实现PhoneStateListener(或任何其他机制)来检测何时恢复3G或Wifi网络连接?
我在API的摘要中看到LISTEN_DATA_CONNECTION_STATE和LISTEN_DATA_ACTIVITY都说(蜂窝).这仅仅意味着3G吗?
谢谢
我试图用Android识别3G中的相邻小区位置,我用getNeighboringCellInfo()来获取.当手机在GSM模式下工作时,我可以使用getCid()和getLac()来获取CellID和LAC,但对于3G,我只能使用getPsc(),我不太确定它是否足够识别一个细胞.
任何人都可以告诉我,我是否可以获得相邻细胞的CellID + LAC?如果那是不可能的,我如何使用PSC代码来识别一个单元?
我需要将AT命令发送到带有C#的usb GSM调制解调器.
问题是我还没有GSM调制解调器或GSM设备尚未开发然后我正在寻找一个模拟器.
我发现的唯一模拟GSM调制解调器是随Android SDK一起提供的.
我现在的问题是通过COM端口发送AT命令到Android模拟GSM调制解调器,就像我需要在我的实际应用程序中做的那样.
有一些方法可以到达Android模拟GSM调制解调器的COM(虚拟Usb-Com)端口,并发送AT命令连接到互联网?
有一个人讲述在这里,但它不能帮助我.
我们刚刚推出了一个新的基于ASP.NET MVC的网络应用程序,可以在所有桌面连接和所有移动设备(如iPhone等)上正常工作.但是,当某些页面通过3G连接查看时(通过3G)在笔记本电脑上或直接在移动设备上加密狗,空白的白页不提供任何内容.看起来好像我们已经返回了一个空请求.
在某些代理网络上,我们遇到了类似的问题,他们说我们的请求规模太大了.这种情况是有道理的,因为它只影响某些页面,我认为移动网络提供商可以运行各种代理服务器.
但是,我无法找到任何有关构成过大请求的信息.我已经分析了其中一个有问题的页面,这里有一些我认为可能相关的统计数据:
HTML内容大小: 33.04KB压缩,50.65KB未压缩
所有样式表的总大小(4个文件):压缩32.39KB,未压缩181.65KB
所有外部JS的总大小(24个文件):压缩227.82KB,未压缩851.46KB
对我来说,内容的压缩大小并不过分,但也许我错了.任何人都可以建议我可以做些什么来解决这个问题,因为我很难找到任何有关此问题的确切信息.
我正在开发一个iOS应用程序,它可以作为商务服务器的瘦客户端.有很多请求发送到服务器,下载了大量数据.
我不使用任何花哨的请求框架,只是NSURLConnection与委托异步.
该应用程序通常适用于WiFi和3G BUT
一些用户在使用3G时会报告随机断开连接(在美国).所有请求都是okey,但偶尔请求失败并显示"无法连接到主机"(-1004)错误.
这会对用户体验产生很大影响.
一些事实:
SCNetworkReachability主机似乎是可以访问的(我知道此API的限制).问题问题可能是什么原因?什么连接属性可以与3G和WiFi不同?我该怎么调试呢?
目前我看到的唯一解决方案是,如果先前的请求失败,则尝试再次发送请求.但是,我想首先找到问题的原因.
编辑问题可能是由我们的一个路由器引起的.IT人员仍在检查问题.
我正在开发一个Android应用程序,我需要尽可能准确地测量当前连接的下载速度.这是我到目前为止找到的最好的方法(基本上我启动一个计时器,开始从快速服务器下载Linux发行版,下载大约200千字节,然后停止计时器并检查已用时间和下载的总字节数):
try{
InputStream is = new URL("http://www.domain.com/ubuntu-linux.iso").openStream();
byte[] buf = new byte[1024];
int n = 0;
startBytes = TrafficStats.getTotalRxBytes(); /*gets total bytes received so far*/
startTime = System.nanoTime();
while(n<200){
is.read(buf);
n++;
}
endTime = System.nanoTime();
endBytes = TrafficStats.getTotalRxBytes(); /*gets total bytes received so far*/
totalTime = endTime - startTime;
totalBytes = endBytes - startBytes;
}
catch(Exception e){
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
之后,我只需要将传输的字节数除以所用的时间,它将以bps为单位给出下载速度.
问题:1.这种方法是否准确?你知道一个更好的吗?
非常感谢.
我有一个非常讨厌的问题.发生的事情是我有一个使用本机套接字通过TCP发送数据的应用程序.当我第一次启动我的应用程序并通过套接字发送数据时,没有任何东西通过.但是,如果我然后退出该过程并重新启动然后再次发送,则可以正常工作.如果我在睡眠模式后第一次启动我的应用程序之前打开浏览器或其他东西也一样.
在调用本机代码之前,如何强制"3G"退出睡眠模式?
编辑:我已经尝试过使用PowerManager.
我正在使用可访问性API来检测我当前的连接,但我只能区分WIFI和3G.
我得到以下标志:
LTE: kSCNetworkReachabilityFlagsIsLocalAddress|kSCNetworkReachabilityFlagsIsWWAN|kSCNetworkReachabilityFlagsTransientConnection|kSCNetworkReachabilityFlagsReachable
无线上网: kSCNetworkReachabilityFlagsIsDirect|kSCNetworkReachabilityFlagsReachable
问题是LTE返回与3G连接相同的标志.有没有办法确定用户目前是否有LTE或3G?
3g ×10
android ×5
ios ×3
java ×2
networking ×2
android-ndk ×1
android-wifi ×1
asp.net-mvc ×1
at-command ×1
c# ×1
cellid ×1
connectivity ×1
ipad ×1
iphone ×1
location ×1
native ×1
proxy ×1
sdk ×1
serial-port ×1
sockets ×1
wifi ×1
wireless ×1
xcode ×1