项目不会在xcode 8中的模拟器上运行

时间:2016-11-08 08:03:16

标签: ios xcode

升级到xcode8后,我的项目将不再在模拟器上运行(在设备上运行)

错误:

var addrArray = [];
$(".addrValue").each(function(ndx, elem) {
  var text = $(elem).contents()
    .filter(function() {
      if (this.nodeType === 3) { // chech for text node
        if ($(this).text().trim().length !== 0) {
          return true;
        }
      }
    }).text();
  if (text.length === 0) { // check string length
    addrArray.push('no value at all');
  } else {
    addrArray.push(text.trim());
  }

});

console.log(addrArray)

我删除了整个deriveddata文件夹并多次清理项目但没有成功。有什么想法可以解决吗?

1 个答案:

答案 0 :(得分:1)

如果您正在使用CocoaPods(尤其是旧版本),您会注意到pods项目文件中的所有资源包目标都没有info.plist。 使用CocoaPods通用Info.plist设置它们并且它将运行。 然而,这不是永久的解决方案。它将在下一个pod install

重置

https://forums.developer.apple.com/thread/66538

修改 如果您的项目中没有碰巧的通用plist文件 在Pod Info.plist中创建一个新文件Target Support Files/Pods-<App Name>/并粘贴此

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>CFBundleDevelopmentRegion</key>
  <string>en</string>
  <key>CFBundleIdentifier</key>
  <string>org.cocoapods.${PRODUCT_NAME:rfc1034identifier}</string>
  <key>CFBundleInfoDictionaryVersion</key>
  <string>6.0</string>
  <key>CFBundleName</key>
  <string>${PRODUCT_NAME}</string>
  <key>CFBundlePackageType</key>
  <string>BNDL</string>
  <key>CFBundleShortVersionString</key>
  <string>1.0.0</string>
  <key>CFBundleSignature</key>
  <string>????</string>
  <key>CFBundleVersion</key>
  <string>${CURRENT_PROJECT_VERSION}</string>
  <key>NSPrincipalClass</key>
  <string></string>
</dict>
</plist>

编辑2: 修正了上面的值。苹果不会像以前那样上传到App Store时接受它。 它不应该有CFBundleExecutable 并且CFBundlePackageType应设置为BNDL