代号为iOS的恶意二进制代码

时间:2017-11-09 20:02:57

标签: ios codenameone release application-loader

我刚尝试使用已加载的应用程序将一个Codename One应用程序的发布版本上传到iTunes连接并点击此新错误;

Screenshot of error from application loader

注意:黑屏部分只是应用程序名称

该应用确实使用了条形码扫描库,因此可能应该包含所提到的库(libzbar),但它似乎位于ipa包中的错误位置。
这个应用程序从一开始就有条形码扫描库,我们以前从未见过这个。

修改
这是项目中src文件夹的内容;

content of src folder

这是native / ios;

content of native/ios folder

注意:我已经删除了一些识别文件名

有问题的文件确实存在于lib / impl / native / ios文件夹中。但是看看我们在git中的项目历史,我可以看到这不是一个新的补充,它自2016年首次创建分支以来一直存在。

编辑2:
我的codenameone_settings.properties文件的内容;

1.arg.rim.obfuscation=false
baseClass=src/generated/StateMachineBase.java
codename1.android.keystore=*********.ks
codename1.android.keystoreAlias=*********
codename1.android.keystorePassword=*********
codename1.arg.android.captureRecord=false
codename1.arg.android.debug=false
codename1.arg.android.enableProguard=false
codename1.arg.android.facebook_permissions="user_about_me", "email"
codename1.arg.android.gradle=true
codename1.arg.android.newPeer=true
codename1.arg.android.playService.maps=true
codename1.arg.android.proguardKeep=\  -keep class net.sourceforge.zbar.** {*;} 
codename1.arg.android.release=true
codename1.arg.android.targetSDKVersion=23
codename1.arg.android.versionCode=*********
codename1.arg.android.xapplication=<activity android\:name\="com.dm.zbar.android.scanner.ZBarScannerActivity" android\:screenOrientation\="landscape"/> <meta-data android\:name\="com.google.android.maps.v2.API_KEY" android\:value\="*********"/>
codename1.arg.android.xpermissions=<uses-permission android\:name\="com.google.android.providers.gsf.permission.READ_GSERVICES"/><uses-feature         android\:glEsVersion\="0x00020000"         android\:required\="true"/><uses-permission android\:name\="android.permission.ACCESS_NETWORK_STATE"/><uses-permission android\:name\="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android\:name\="com.google.android.providers.gsf.permission.READ_GSERVICES"/><uses-feature         android\:glEsVersion\="0x00020000"         android\:required\="true"/><uses-permission android\:name\="android.permission.CAMERA"/><uses-feature android\:name\="android.hardware.camera" android\:required\="false"/>
codename1.arg.build.incSources=1
codename1.arg.build.version=*********
codename1.arg.facebook.appId=*********
codename1.arg.ios.add_libs=libc++.dylib;libicucore.dylib;libz.dylib;CoreData.framework;CoreText.framework;GLKit.framework;ImageIO.framework;SystemConfiguration.framework;CoreData.framework;CoreTelephony.framework;SystemConfiguration.framework;AdSupport.framework;
codename1.arg.ios.afterFinishLaunching=[GMSServices provideAPIKey\:@"*********"];
codename1.arg.ios.application_exits=false
codename1.arg.ios.bundleVersion=3.76
codename1.arg.ios.dsym=false
codename1.arg.ios.glAppDelegateHeader=\#import "GoogleMaps/GoogleMaps.h"\n\#import "GoogleMaps/GoogleMaps.h"
codename1.arg.ios.includePush=true
codename1.arg.ios.includePushEnt=false
codename1.arg.ios.interface_orientation=UIInterfaceOrientationPortrait\:UIInterfaceOrientationPortraitUpsideDown\:UIInterfaceOrientationLandscapeLeft\:UIInterfaceOrientationLandscapeRight
codename1.arg.ios.locationUsageDescription=*********
codename1.arg.ios.newStorageLocation=true
codename1.arg.ios.objC=true
codename1.arg.ios.plistInject=<key>NSAppTransportSecurity</key><dict><key>NSExceptionDomains</key><dict><key>*********</key><dict><key>NSIncludesSubdomains</key><true/><key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key><true/></dict><key>*********</key><dict><key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key><true/></dict></dict></dict>
codename1.arg.ios.pods=,GoogleMaps
codename1.arg.ios.pods.platform=7.0,7.0
codename1.arg.ios.pods.sources=,https\://github.com/CocoaPods/Specs.git
codename1.arg.ios.prerendered_icon=false
codename1.arg.ios.project_type=ios
codename1.arg.ios.statusbar_hidden=false
codename1.arg.ios.testFlight=false
codename1.arg.j2me.nativeThemeConst=0
codename1.arg.java.version=8
codename1.arg.rim.obfuscation=false
codename1.arg.win.ver=8
codename1.description=
codename1.displayName=*********
codename1.icon=icon.png
codename1.ios.appid=*********
codename1.ios.certificate=
codename1.ios.certificatePassword=
codename1.ios.debug.certificate=*********.p12
codename1.ios.debug.certificatePassword=*********
codename1.ios.debug.provision=*********.mobileprovision
codename1.ios.provision=
codename1.ios.release.certificate=*********.p12
codename1.ios.release.certificatePassword=*********
codename1.ios.release.provision=*********.mobileprovision
codename1.j2me.nativeTheme=nbproject/nativej2me.res
codename1.languageLevel=5
codename1.mainName=*********
codename1.packageName=*********
codename1.rim.certificatePassword=
codename1.rim.signtoolCsk=
codename1.rim.signtoolDb=
codename1.secondaryTitle=CodenameOne_Template
codename1.vendor=*********
codename1.version=3.7
guiResource=*********.res
mainForm=Main
package=generated
releaseVersion=3.7
userClass=src/userclasses/StateMachine.java
userClassAbs=*********StateMachine.java

编辑3: 此问题是由复制包资源中的额外条目引起的,该条目将整个projectname-src文件夹添加到包中,包括已复制的所有资源和所有库。 这是来自XCode的屏幕截图,其中包含从CodeName One构建服务器下载的项目源;

xcode build phase with erroneous step

目前似乎解决方法是下载项目源并在Mac上从XCode构建和提交。

注意确保也采取以下步骤;

  • 选择正确的团队来签署应用
  • 将目标设置为iOS 8
  • 将应用商店图标添加到应用图标xcassets文件(1024 * 1024)
  • 如果您的应用使用推送
  • ,则激活推送功能
  • 将以下内容添加到信息部分(plist);
  • 隐私权 - 相机使用说明
  • 隐私权 - 媒体库使用说明
  • 隐私权 - 麦克风使用说明
  • 隐私 - 照片库使用说明
  • 从构建阶段&gt;复制捆绑资源中删除“{project name} -src”

1 个答案:

答案 0 :(得分:1)

我们发现了一些行为不端但却不清楚为何会发生这种情况。错误与您获得的错误略有不同,我们不会看到src包含您看到的内容。但是,这可能是原因。

我们将在本周五(2017年11月24日)的即将到来的更新中尝试推出它。