小编Ted*_*y13的帖子

检查iPhone是否存在活动的互联网连接情况

我想检查用户是否有活跃的互联网连接.这就是我实现它的方式.它似乎工作正常,但问题是它总是显示我的iPhone模拟器(uialert出现)没有连接,即使我的wifi打开或关闭.有谁知道我做错了什么?谢谢你的帮助!

Reachability *r= [Reachability reachabilityWithHostName:@"http://www.google.com"];
    NetworkStatus internetStatus= [r currentReachabilityStatus];

 if ((internetStatus != ReachableViaWiFi) && (internetStatus != ReachableViaWWAN))
    {

        UIAlertView *alert= [[UIAlertView alloc] initWithTitle:@"No internet" message:@"No internet connection found. Please try again later"
                                                      delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
        [alert show];
        [alert release];
    }

 else {

 // execute code in app

 }
Run Code Online (Sandbox Code Playgroud)

iphone objective-c internet-connection reachability

5
推荐指数
1
解决办法
4008
查看次数

tesseract安装mac os

我正在尝试使用homeBrew在我的mac上安装tesseract.当我尝试安装时,一切似乎都很好,但我收到以下错误/消息:

Warning: Could not link leptonica. Unlinking...
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
You can try again using `brew link leptonica'
Run Code Online (Sandbox Code Playgroud)

当我尝试运行tesseract函数时,我收到以下错误:

Tesseract Open Source OCR Engine v3.02.02 with Leptonica
Error in pixReadStreamPng: function not present
Error in pixReadStream: png: no pix returned
Error in pixRead: pix not read
Unsupported image type.
Run Code Online (Sandbox Code Playgroud)

我安装了图像magick,我用来安装tesseract的命令是:

brew install tesseract
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我,我可以做些什么让tesseract工作?谢谢!

编辑 当我运行brew链接leptonica时,我收到以下错误:

Could not symlink file: /usr/local/Cellar/leptonica/1.69/bin/yuvtest
Target /usr/local/bin/yuvtest already exists. …
Run Code Online (Sandbox Code Playgroud)

macos terminal homebrew tesseract

5
推荐指数
2
解决办法
6094
查看次数

委托没有调用不同的线程

我正在尝试使用CoreBluetooth框架,我已经创建了一个帮助程序类(btHelper),以使代码更易于维护等.

问题是,在这个帮助器类中,委托方法不再被调用,就像它们最初被刷成大类时一样.是的我在helper类的.h中设置了委托方法,是的,我已将对象CBCentralManager委托设置为self.我几乎完成了所有事情,就像在一堂课中一样.我认为它与主线程有关,但我对此没什么经验.

具体来说,我想要的委托方法是

-(void)centralManagerDidUpdateState:(CBCentralManager *)central 
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉我,为了让委托调用在这个助手类中应该工作,我必须做些什么?谢谢!

以下是PrimaryViewController类和btHelper类

btHelper.m

-(void) activateBluetooth
{
self.manager= [[CBCentralManager alloc] initWithDelegate:self queue:nil];
}

- (void)centralManagerDidUpdateState:(CBCentralManager *)central
{
  //DELEGATE METHOD THAT NEVER GETS CALLED. SHOULD BE CALLED AS SOON AS self.manager is initiated
   self.isAvailable=FALSE;
   switch (central.state) {
    case CBCentralManagerStatePoweredOff:
        NSLog(@"CoreBluetooth BLE hardware is powered off");
        break;
    case CBCentralManagerStatePoweredOn:
        NSLog(@"CoreBluetooth BLE hardware is powered on and ready");
         self.isAvailable=TRUE;
        break;
    case CBCentralManagerStateResetting:
        NSLog(@"CoreBluetooth BLE hardware is resetting");
        break;
    case CBCentralManagerStateUnauthorized:
        NSLog(@"CoreBluetooth BLE state is unauthorized");
        break;
    case CBCentralManagerStateUnknown:
        NSLog(@"CoreBluetooth …
Run Code Online (Sandbox Code Playgroud)

delegates objective-c ios core-bluetooth cbcentralmanager

5
推荐指数
1
解决办法
2038
查看次数

一段时间后,CoreLocation在后台停止工作

我正在开发一个iOS(7.0+)应用程序,用于健身(运行),使用用户GPS位置,进行小规模计算并将数据传输到蓝牙低功耗(4.0)手表.此过程需要在后台进行,即使用户锁定其iOS设备也是如此.

我也实现了以下背景模式:

 App communicates using CoreBluetooth
 App registers for location updates
Run Code Online (Sandbox Code Playgroud)

我已经成功地使一切运行良好,除了在设备被锁定一段时间(例如2小时)后,iOS设备停止更新位置,因为我可以看到它不再发送更新GPS值到蓝牙手表.然后,我必须解锁设备,重新打开应用程序和位置服务,因为它应该再次工作.

有没有人知道如何让位置服务在后台运行(设备已锁定),而不会在一定时间后突然停止位置更新?如果可能的话,一个有效的解决方案是优选的,不会比正常情况下使用GPS消耗太多电池.

objective-c core-location cllocationmanager ios ios-background-mode

5
推荐指数
1
解决办法
536
查看次数

亚马逊Cognito iOS

我正在尝试将Amazon Web Services集成到我的应用程序中,但坦率地说,这是一项重大挑战,而且非常烦人.

我正在使用适用于iOS的Amazon SDK(V2.1.0),这正是我想要实现的:

  1. 在我的应用程序中,我有一个注册屏幕,我的用户可以使用Facebook或创建帐户注册我的应用程序
  2. 如果用户希望创建帐户,我计划使用Amazon Cognito安全地访问Amazon DynamoDB(通过iOS应用程序),我将在其中存储电子邮件和密码.

我试图让我的ViewController中的Amazon Cognito使用以下代码,但我对变量cognitoId没有任何结果.我的代码如下:

AWSCognitoCredentialsProvider *credentialsProvider = [[AWSCognitoCredentialsProvider alloc] initWithRegionType:AWSRegionUSEast1
                                                                                                identityPoolId:@"us-east-1:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX"];
AWSServiceConfiguration *configuration = [[AWSServiceConfiguration alloc] initWithRegion:AWSRegionUSEast1
                                                                     credentialsProvider:credentialsProvider];
AWSServiceManager.defaultServiceManager.defaultServiceConfiguration = configuration;

NSString *cognitoId = credentialsProvider.identityId; //NULL
Run Code Online (Sandbox Code Playgroud)

根据我上面解释的一切,我有以下问题:

  1. 在这种情况下,我的Amazon Cognito用例是否正确?
  2. 为什么上面的代码不起作用?
  3. 我认为该问题可能与身份池中配置的iam角色有关.我不确定在安全方面会给出什么样的角色.用户注册后,应用程序将需要获得写入我的DynamoDB的权限,而不会暴露任何安全漏洞.任何人都可以对此提出任何见解吗?

我感谢任何可以提供帮助的人.在过去的几天里,我试图让它继续工作,我正在失去理智.

谢谢!

objective-c amazon-web-services ios amazon-cognito

5
推荐指数
1
解决办法
587
查看次数

设备没有互联网(数据)访问时控制台出错

当我正常启动我的应用程序3g/wifi时,我在控制台内没有错误.当我为测试目的禁用数据访问(也就是飞机模式)时,我在控制台中启动应用程序时收到以下错误消息:

 2011-11-16 19:17:40.440 Juice[8674:707] Reachability Flag Status: -- -------   networkStatusForFlags
 2011-11-16 19:17:41.292 Juice[8674:707] Applications are expected to have a root view    controller at the end of application launch
Run Code Online (Sandbox Code Playgroud)

请注意,当应用程序检测到没有数据连接且我正在使用标签栏控制器时,我会看到一个uialertview弹出.我不知道为什么我收到这些错误消息.

提前致谢!

xcode objective-c ios

4
推荐指数
1
解决办法
3178
查看次数

在ubuntu中保存cron作业

我是ubuntu和cron的新手.我已在命令行中输入以下内容:

       crontab -e
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:"没有crontab泰迪 - 使用空的888"

然后我进入我希望它执行的时候(我相信这是对的?...我希望它每天运行一次,每天晚上8点运行):

                 00 18 * * * /*****/*****/****/test.php 
Run Code Online (Sandbox Code Playgroud)

这是我的问题,我不知道如何退回到命令行.我输入的所有东西都给了我奇怪的外观字母而输入(返回)却没有做任何事情.我已经读过这将完成这项工作

                 ESC : w q
Run Code Online (Sandbox Code Playgroud)

但它不适合我.我尝试输入,我试着同时按下它们,我一次尝试按一个.没什么,仍然卡住了.当我按下ESC时,它出现为^ [.

这可能是一个非常简单的问题,如果它是愚蠢的我会道歉,但我已经被困住了一段时间.任何帮助将非常感谢.

谢谢

PS我读的地方,如果这是你需要到在的cronjob年底做的端线的第一份工作......这是一个简单的输入按键或实际键入\n吗?

vi cron

4
推荐指数
1
解决办法
8878
查看次数

将uint8_t和uint16_t转换为NSMutableData

我对编程很新,我正在尝试使用CoreBluetooth for iOS开发蓝牙健身设备.我从不同的硬件制造商那里购买了一堆不同的设备进行测试,并向设备发送了一条指令

我希望能够为蓝牙健身设备写一个值(健身目标).我知道如何用蓝牙读/写.

我只是不知道如何将我想要的值转换为uint8_t和uint16_t,然后将其组合成一个8字节的NSMutableData.

谁能告诉我怎么做呢?

c objective-c ios

4
推荐指数
1
解决办法
848
查看次数

应用程序提交iOS的捆绑ID

我已经在应用程序商店上有一个现有的应用程序......我想将一个新的应用程序上传到应用程序商店,但它要求一个包ID?我可以使用与第一个应用程序相同的应用程序,还是每个新应用程序的新捆绑包ID?

谢谢!

xcode objective-c ios

3
推荐指数
1
解决办法
2264
查看次数

将UIImage转换为8位

我希望将UIImage转换为8位.我试图这样做,但我不确定我是否做得对,因为我稍后在尝试使用图像处理库leptonica时收到一条消息,表明它不是8位.任何人都可以告诉我,如果我正确这样做或代码如何做到这一点?

谢谢!

 CGImageRef myCGImage = image.CGImage;
 CFDataRef data = CGDataProviderCopyData(CGImageGetDataProvider(myCGImage));
 const UInt8 *imageData = CFDataGetBytePtr(data);
Run Code Online (Sandbox Code Playgroud)

objective-c ios

2
推荐指数
1
解决办法
2335
查看次数