首页 \ 问答 \ 在trigger.io中更改默认启动设备(Change default startup device in trigger.io)

在trigger.io中更改默认启动设备(Change default startup device in trigger.io)

我使用trigger.io修改应用程序,它是一个仅限iPad的应用程序。 运行应用程序时它始终在iPhone中启动,将其更改为iPad似乎打破了一些东西。 它也从纵向开始。

我已经设定:

"requirements": {
"ios": {
    "device_family": "ipad", 
    "minimum_version": "4.0"
}

但是,唉,仍然在iPhone模式下启动。

如何让模拟器始终以横向模式在iPad中启动?


Im amending an app using trigger.io, it is an iPad only app. When running the app It always starts up in an iPhone, changing it to iPad seems to break something. It also starts in the portrait orientation.

I have set:

"requirements": {
"ios": {
    "device_family": "ipad", 
    "minimum_version": "4.0"
}

But alas, still starts up in iPhone mode.

How can I get the simulator to always start up in the iPad in landscape mode?


原文:https://stackoverflow.com/questions/13288045
更新时间:2023-06-04 11:06

最满意答案

改变这个:

- (NSData *)extractFloatArrayFromElement:(TBXMLElement *)element
{
    // element is <source>
    NSMutableData *floatData = [NSMutableData data];
    TBXMLElement *floatElement = [TBXML childElementNamed:@"float_array" parentElement:element];
    NSString *stringValues = [TBXML textForElement:floatElement];

    NSArray *values = [stringValues componentsSeparatedByString:@" "];
    for (NSString *value in values) {
        float floatValue = [value floatValue];
        [floatData appendBytes:&floatValue length:sizeof(floatValue)];
    }

    return floatData;
}

对此:

- (NSData *)extractFloatArrayFromElement:(TBXMLElement *)element
{
@autoreleasepool {
    // element is <source>
    NSMutableData *floatData = [NSMutableData data];
    TBXMLElement *floatElement = [TBXML childElementNamed:@"float_array" parentElement:element];
    NSString *stringValues = [TBXML textForElement:floatElement];

    NSArray *values = [stringValues componentsSeparatedByString:@" "];
    for (NSString *value in values) {
        float floatValue = [value floatValue];
        [floatData appendBytes:&floatValue length:sizeof(floatValue)];
    }

    return floatData;
}
}

这假设componentsSeparatedByString:是大量自动释放对象的来源。 如果这没有帮助,那么:

  • 按字节数对分配工具中的报告进行排序
  • 打开“仅跟踪活动对象”(或其他任何名称)
  • 打开“跟踪引用计数事件”
  • 单击对象,然后单击以创建单个对象

这应该告诉你代码中触发分配的内容。 从那里,这是一个使内存使用更有效的问题。


Change this:

- (NSData *)extractFloatArrayFromElement:(TBXMLElement *)element
{
    // element is <source>
    NSMutableData *floatData = [NSMutableData data];
    TBXMLElement *floatElement = [TBXML childElementNamed:@"float_array" parentElement:element];
    NSString *stringValues = [TBXML textForElement:floatElement];

    NSArray *values = [stringValues componentsSeparatedByString:@" "];
    for (NSString *value in values) {
        float floatValue = [value floatValue];
        [floatData appendBytes:&floatValue length:sizeof(floatValue)];
    }

    return floatData;
}

To this:

- (NSData *)extractFloatArrayFromElement:(TBXMLElement *)element
{
@autoreleasepool {
    // element is <source>
    NSMutableData *floatData = [NSMutableData data];
    TBXMLElement *floatElement = [TBXML childElementNamed:@"float_array" parentElement:element];
    NSString *stringValues = [TBXML textForElement:floatElement];

    NSArray *values = [stringValues componentsSeparatedByString:@" "];
    for (NSString *value in values) {
        float floatValue = [value floatValue];
        [floatData appendBytes:&floatValue length:sizeof(floatValue)];
    }

    return floatData;
}
}

This assumes that componentsSeparatedByString: is the source of a ton of autoreleased objects. If that doesn't help, then:

  • sort the report in the Allocations Instrument by # of bytes
  • turn on "only track live objects" (or whatever it is called)
  • turn on "track reference count events"
  • click through to the objects and then click through to the creation of a single object

That should tell you what in your code is triggering the allocation. From there, it is a matter of making the memory usage more efficient.

相关问答

更多
  • 关于内存管理的Apple开发人员文档解释了您保留/释放对象的场景。 简而言之,如果你想让字符串坚持下去,你需要保留它直到完成。 如果这只是当前函数的范围,那么您可以在不保留它的情况下离开,就好像该字符串已经autorelease'd(可能),直到函数完成并清除当前的AutoReleasePool后才会释放该字符串。 请记住,一个NSString *实际上可能指向一个NSMutableString *。 如果在你没有意识到的情况下,如果字符串被其他函数改变了,请务必将其复制: NSString * myCop ...
  • 严格来说,这是一个常规副本与这个问题无关。 块将保留创建时捕获的任何obj-c值。 正因为如此,常规问题的解决方法与保留问题的解决方法相同; 即使用__block存储类作为变量。 无论如何,为了回答你的问题,这里没有什么可以选择的。 如果您正在设计自己的基于块的API,并且这样做是有意义的,您可以将块作为参数传递给self的值。 不幸的是,这对大多数API来说都没有意义。 请注意,引用ivar具有完全相同的问题。 如果您需要在块中引用一个ivar,可以使用一个属性,也可以使用bself->ivar 。 附录 ...
  • 有一个保留周期,但这是暂时的。 保留周期如下所示: self保留dispatchQ dispatchQ保留了该区块 该块保留了self 当块返回时, dispatchQ释放它。 此时,保留周期被打破。 该块被解除分配并释放self 。 There is a retain cycle, but it's temporary. The retain cycle looks like this: self retains dispatchQ dispatchQ retains the block the bloc ...
  • 更改文档的更新答案 信息现在分布在文档中的几个指南中。 以下是所需阅读的列表: 可可核心竞争力:宣告财产 使用Objective-C进行编程:封装数据 转换到ARC发行说明 高级内存管理编程指南 Objective-C运行时编程指南:声明属性 这个问题的答案现在完全取决于您是使用ARC管理的应用程序(新项目的现代默认设置)还是强制手动内存管理。 分配与弱 - 使用assign将属性的指针设置为对象的地址,而不保留对象或以其他方式进行策划; 如果分配给它的对象被释放,使用weak来使属性指向nil。 在大多数 ...
  • 委派是一个例子,您必须通过在委托属性上使用assign属性来避免保留周期。 例如,您有一个创建子对象的父对象: self.child = [[[Child alloc] init] autorelease]; 所以父母有一个保留的参考(因为财产制定者保留它)。 现在,父母将自己设置为子代理: self.child.delegate = self; 现在,如果孩子保留其delegate财产,则有一个保留周期。 两者都包含对另一个的引用,并且不能被解除分配。 为了避免这种情况,孩子使用assign属性声明委 ...
  • 我不认为保留周期可能存在问题。 prepareWithCompletionHandler闭包参数捕获self ,但self ( SetupViewController实例)不拥有文档变量。 在这种情况下,您不需要使用捕获列表。 I don't think that there could be problem with retain cycle. prepareWithCompletionHandler closure parameter captures self, but self (instance ...
  • 属性只是一个声明,允许setter,getter和点语法访问器(接口变量隐藏)。 它自己完全没有,但允许你使用-[myInstance myProperty]来获取变量或使用-[myInstance setMyProperty:]来设置它(是的,方法名称被自动分配给-setProperty:和-property ) 。 声明属性时,您有三个类别 - 线程锁定,访问控制和内存管理。 您只能为每个类别选择一个修饰符,如果您不选择其中一个,它会自动自动分配给一个。 @property (
  • 改变这个: - (NSData *)extractFloatArrayFromElement:(TBXMLElement *)element { // element is NSMutableData *floatData = [NSMutableData data]; TBXMLElement *floatElement = [TBXML childElementNamed:@"float_array" parentElement:element]; NS ...
  • 我们很幸运,XCode 4.6正在显示一个警告以避免这个问题。它可以通过提供弱引用来解决 AFImageRequestOperation *requestOperation = [[AFImageRequestOperation alloc] initWithRequest:urlRequest]; **__weak AFImageRequestOperation *tempRequestOperation = requestOperation;** [requestOperation setCompl ...
  • 是的,但是如果您在这些存档中发布了二进制文件(即通过应用程序商店或本地企业内部分发的二进制文件),那么您将丢失符号并无法表示崩溃日志。 如果你还没有发布二进制文件那么没有问题。 附注:我将所有这些Xcode文件夹移动到~/tmp目录以便于访问,因此检查/删除其内容很容易; 其中一些,比如DerivedData ,甚至可以映射到RAM磁盘;-) Yes, however if you have released binaries (i.e. binaries distributed via app store ...

相关文章

更多

最新问答

更多
  • 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
  • 如何通过引用返回对象?(How is returning an object by reference possible?)
  • 矩阵如何存储在内存中?(How are matrices stored in memory?)
  • 每个请求的Java新会话?(Java New Session For Each Request?)
  • css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
  • 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
  • xcode语法颜色编码解释?(xcode syntax color coding explained?)
  • 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
  • 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
  • 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
  • 西安哪有PLC可控制编程的培训
  • 在Entity Framework中选择基类(Select base class in Entity Framework)
  • 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
  • 电脑二级VF有什么用
  • Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
  • 金华英语角.
  • 手机软件如何制作
  • 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
  • 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
  • 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
  • Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
  • 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
  • python的访问器方法有哪些
  • DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
  • 在Ruby中对组合进行排序(Sorting a combination in Ruby)
  • 网站开发的流程?
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。