小编Bog*_*ogy的帖子

ERROR ITMS-90207 Apple Store Submisson

当我在模拟器或设备上运行它时,我的应用程序运行正常(用于调试和发布构建配置).但是当我尝试将我的应用程序提交到Apple Store时,我收到以下错误:

ERROR ITMS-90207:"无效的捆绑包.'APPNAME.app'的捆绑包不包含捆绑可执行文件."

我尝试使用Xcode和Application Loader上传档案,但没有成功.

在此输入图像描述

我已经尝试了本主题中的一些解决方案(Xcode App Submisson ERROR ITMS-90207:"无效的捆绑包")但它们都不适用于我的项目:

  • CFBundleExecutable在我的plist文件中声明为$(EXECUTABLE_NAME)
  • 我试图禁用Bitcode
  • 我试图删除所有CFBundleExecutable表单Pods plist文件(只保留目标的plist中的一个)

也许这个错误与Xcode版本有关...我的mac正在运行macOS Sierra版本10.12.6 Beta(16G8c),Xcode版本8.3.2(8E2002)和Application Loader版本3.0(620).

欢迎任何帮助.

UDPATE:

我尝试使用Xcode 8.2,我有同样的错误.

这是我的plist文件以获取更多详细信息:

<?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>CFBundleAllowMixedLocalizations</key>
    <true/>
    <key>CFBundleDevelopmentRegion</key>
    <string>en</string>
    <key>CFBundleDisplayName</key>
    <string>APPNAME</string>
    <key>CFBundleExecutable</key>
    <string>${EXECUTABLE_NAME}</string>
    <key>CFBundleIdentifier</key>
    <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
    <key>CFBundleInfoDictionaryVersion</key>
    <string>6.0</string>
    <key>CFBundleName</key>
    <string>$(PRODUCT_NAME)</string>
    <key>CFBundlePackageType</key>
    <string>APPL</string>
    <key>CFBundleShortVersionString</key>
    <string>1.0</string>
    <key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>fb000000</string>
            </array>
        </dict>
    </array>
    <key>CFBundleVersion</key>
    <string>639</string>
    <key>FacebookAppID</key>
    <string>000000</string>
    <key>FacebookDisplayName</key>
    <string>APPNAME</string>
    <key>FirebaseAppDelegateProxyEnabled</key>
    <false/>
    <key>LSApplicationQueriesSchemes</key>
    <array>
        <string>fbapi</string>
        <string>fb-messenger-api</string>
        <string>fbauth2</string>
        <string>fbshareextension</string> …
Run Code Online (Sandbox Code Playgroud)

xcode publishing ios

9
推荐指数
1
解决办法
533
查看次数

如何使用 ConstraintLayout 在 DimensionRatio 上设置 maxHeight?

我正在尝试显示以父级为中心的图像,尺寸比为 1220:1000,最大高度为 300dp(即使使用大屏幕也能保持图像小)

<android.support.constraint.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/image"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_marginStart="10dp"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="10dp"
        android:layout_marginRight="10dp"
        android:layout_marginBottom="10dp"
        android:adjustViewBounds="true"
        android:scaleType="centerInside"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintDimensionRatio="1220:1000"
        app:layout_constraintHeight_max="200dp"  ==> This line break the ratio (the image is not displayed)
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)

app:layout_constraintHeight_max属性打破了比例。有没有办法做到这一点?

layout android android-constraintlayout

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

取消令牌和线程无法正常工作

我想取消一个线程,然后再运行另一个线程.这是我的代码:

private void ResetMedia(object sender, RoutedEventArgs e)
{
        cancelWaveForm.Cancel(); // cancel the running thread
        cancelWaveForm.Token.WaitHandle.WaitOne(); // wait the end of the cancellation
        cancelWaveForm.Dispose();

        //some work

        cancelWaveForm = new CancellationTokenSource(); // creating a new cancellation token
        new Thread(() => WaveFormLoop(cancelWaveForm.Token)).Start(); // starting a new thread
}
Run Code Online (Sandbox Code Playgroud)

当我调用这个方法时,第一个线程不会停止而第二个线程开始运行...
但是如果我跳过最后两行它会工作:

private void ResetMedia(object sender, RoutedEventArgs e)
{
        cancelWaveForm.Cancel(); // cancel the running thread
        cancelWaveForm.Token.WaitHandle.WaitOne(); // wait the end of the cancellation
        cancelWaveForm.Dispose();

        //some work

        //cancelWaveForm = new CancellationTokenSource(); // creating a new cancellation …
Run Code Online (Sandbox Code Playgroud)

c# multithreading cancellationtokensource cancellation-token

0
推荐指数
1
解决办法
1726
查看次数