小编Sja*_*ien的帖子

iPhone文件扩展名app association

在我的iPhone上,我正在运行一款名为Caissa Chess的应用程序.在向制造商注册应用程序后(这是可选的)我收到了一封包含国际象棋拼图的电子邮件.邮件消息的关键部分,显示了国际象棋图,如下所示:

<a href="chess://puzzle/8/p1R3p1/4p1kn/3p3N/3Pr2P/6P1/PP3K2/8 w ?term=w2&solution=c7xg7&description=Amura%20vs%20Carlos%20Bulcourf%2C%20Villa%20Ballester%2C%201996"><img src="cid:image1"></a>
Run Code Online (Sandbox Code Playgroud)

点击此URL显示的图表退出Mail.app并打开Caissa Chess,然后显示图表,并允许您解决难题.

这是如何工作的?我想为iPhone制作一个小应用程序,需要一个外部文件,通过电子邮件发送.我将首先需要了解发生了什么.

  • chess:// 如何以及在何处定义将打开哪个应用程序?
  • URL的其余部分是什么意思?它会引用一个本地文件,还是会被应用程序解析为一个实时的http:url?电子邮件正文包含图像附件.

我确信这个机制已经记录在某个地方,但是我没有描述它的书籍,谷歌也没有帮助我.

先感谢您

Sjakelien

iphone url types file associations

7
推荐指数
1
解决办法
9675
查看次数

将字符串与objective-C中的数组进行比较

这是一个非常基本的问题,我相信你能够快速回答.请不要嘲笑我的无知.

我有一个字符串,我想与一个字符串数组进行比较.只有当字符串不是数组的一部分时,我才想执行操作.我尝试了以下代码,但不起作用.我明白为什么,但我想不出有办法正确地做到这一点.

请帮助我摆脱痛苦.

提前致谢

Sjakelien

-(void) findRedundant: (NSString *) aString {
#define ALPHA_ARRAY [NSArray arrayWithObjects: @"A", @"B", @"C", nil]   
    NSUInteger f;
    for (f = 0; f < [ALPHA_ARRAY count]; f++) 
    {
        NSString * stringFromArray = [ALPHA_ARRAY objectAtIndex:f];
        if ([aString isEqualToString:stringFromArray]) {
            // do nothing

        } else {
            //do something
        }

    }

}



[self findRedundant:@"D"];
Run Code Online (Sandbox Code Playgroud)

arrays string comparison objective-c

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

比较Objective-C中的两个xml文件

我的文件系统(iPhone)中有两个xml文件(a.xml和b.xml).现在我想知道这些文件是否包含完全相同的数据.大多数情况下,这种比较都是正确的,因为b.xml是copyItemAtPath:操作的结果.除非它被更新的信息覆盖.比较这些文件最有效的方法是什么?

  1. 我可以将文件的内容作为字符串读取,然后比较字符串
  2. 我可以解析文件并比较一些关键元素
  3. 我想有一种非常生硬的方式,不需要解释文件,但允许我在较低级别进行比较.

任何建议都是非常受欢迎的.

谢谢你

Sjakelien

更新:

我最终这样做了:

oldData = [NSData dataWithContentsOfFile:PathToAXML];
newData = [NSData dataWithContentsOfFile:PathToBXML];
Run Code Online (Sandbox Code Playgroud)

然后将其与:

[newData isEqualToData:oldData];
Run Code Online (Sandbox Code Playgroud)

问题仍然是:效率高于:

oldData = [NSString dataWithContentsOfFile:PathToAXML];
newData = [NSString dataWithContentsOfFile:PathToBXML];

[newData isEqualToString:oldData];
Run Code Online (Sandbox Code Playgroud)

compare file objective-c

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

iPhone:我的泄漏应用程序可以损害其他应用程序吗?

所以,我写完了我的第一个iPhone应用程序,并且已经将它发送给一组beta测试人员.每个人都很高兴,除了这个人注意到在运行我的应用程序后,另一个应用程序不再启动了.

不太了解内存管理,我开始查看Instruments中的Leaks图表,并注意到我的应用程序中发生了一些泄漏.

三个问题:

  1. 泄漏总是不好吗?最大泄漏是15k,共计5,1 MB分配的内存.
  2. Apple会因泄漏而拒绝我的应用吗?
  3. 我的应用程序退出后,是不是所有的内存都会自动释放?可能是我泄漏的应用程序对其他应用程序有害吗?

谢谢Sjakelien

iphone memory-leaks

4
推荐指数
2
解决办法
885
查看次数

EXC_BAD_ACCESS尝试读取NSArray

在下面的代码中,我尝试从plist中读取数据:

 -(void)readPreferences 
    {
        NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
        NSMutableArray * myAppDefaults  = [defaults mutableArrayValueForKey:@"LastList"];
        myCustomObject * savedObject;
        NSUInteger i;
        for (i = 0; i < [myAppDefaults  count]; i++) 
        {
            NSArray * thisArray = [myAppDefaults  objectAtIndex:i];

            savedObject.value1 = [thisArray objectAtIndex:0];
            savedObject.value2 = [thisArray objectAtIndex:1];
            savedObject.value3 = [thisArray objectAtIndex:2];
            savedObject.value4 = [myAppDefaults  objectAtIndex:3];

            [objectsArray addObject:savedObject];
        }

    }
Run Code Online (Sandbox Code Playgroud)

不知何故,当我尝试设置"savedObject.value1"时,我收到"EXC_BAD_ACCESS"错误.

我意识到这很可能是基本的内存管理,或指针/对象的混乱,但我还在学习.我希望有人可以帮助我.最好的问候Sjakelien

cocoa cocoa-touch objective-c nsuserdefaults nsmutablearray

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