Thursday, May 23, 2019

XCode duplicate symbol architecture arm64

https://stackoverflow.com/questions/42021796/react-native-xcode-project-product-archive-fails-with-duplicate-symbols-for-arch

Yup i came across, when XCode build Archive the error were ld: 362 duplicate symbols for architecture arm64. The solution is the provided link.

Open Podfile and check the bottom part:
supposed to show something like

post_install do |installer|
  installer.pods_project.targets.each do |target|
    if target.name == "React"
      target.remove_from_project
    end
  end
end

If you see none, that add that one and then execute $ pod install
so the Pods project would be rebuild.

thank you ^^

Thursday, April 11, 2019

ReactNative Error no such file or directory: '.../node_modules/react-native-maps/lib/ios/AirGoogleMaps/DummyView.m'

If you eve encounter the same situation


clang: error: no such file or directory: '/Users/adesantoasman/.../node_modules/react-native-maps/lib/ios/AirGoogleMaps/DummyView.m'

Then simply do these:
1. go to the node_modules/react-native-maps/lib/ios/AirGoogleMaps/

2. the copy
cp AIRDummyView.h DummyView.h
cp AIRDummyView.m DummyView.m

3. edit the content of respective files to

DummyView.h
===========
//
//  AIRDummyView.h
//  AirMapsExplorer
//
//  Created by Gil Birman on 10/4/16.
//

#ifdef HAVE_GOOGLE_MAPS

#import


@interface DummyView : UIView
@property (nonatomic, weak) UIView *view;
- (instancetype)initWithView:(UIView*)view;
@end

#endif

DummyView.m
===========
//
//  AIRDummyView.m
//  AirMapsExplorer
//
//  Created by Gil Birman on 10/4/16.
//

#ifdef HAVE_GOOGLE_MAPS

#import
#import "DummyView.h"

@implementation DummyView
- (instancetype)initWithView:(UIView*)view
{
  if ((self = [super init])) {
    self.view = view;
  }
  return self;
}
@end

#endif

Hope it helps ^^

Monday, April 8, 2019

IONIC2, Error Metadata version mismatch for module node_modules/@ionic-native/file/index.d.ts, found version 4, expected 3

Refer to this https://github.com/ionic-team/ionic/issues/15324 and make sure to
modify the package.json

    "@ionic-native/file": "^4.3.3",
to
    "@ionic-native/file": "4.3.3",

and yarn install.

Hope it helps

Thursday, April 4, 2019

ReactNative, pod install, Archive faliled with duplicate *.o

I resolved this issue and succesfully implemented GMaps on IOS simulator by the followings:
(ref.: http://stackoverflow.com/questions/24298144/duplicate-symbols-for-architecture-x86-64)
  1. Open Xcode > Pods > Targets Support Files > Pods-{TARGET-NAME}
  1. find "OTHER_LDFLAGS" and remove only "-ObjC" in these two files:
  1. Pods-{TARGET-NAME}.release.xcconfig & Pods-{TARGET-NAME}.debug.xcconfig
  1. Go to project main target > Build Settings > Other Linker Flags:
  1. Make sure no "-ObjC" is left in the value
  1. I deleted the build/Build folder in ios and run-ios again. It works now.
  1. Also make sure you have enable Google Maps SDK for iOS on Google APIs console (only enabling API key will not success)
Side effects from the link above: the app may become larger as there may be duplicated symbols during compile
Hope can help you.
P.S. Not yet try on real device

Friday, February 1, 2019

ionic2 Android, Build failed version 9.2.0 is needed for the google-services plugin

You could edit a file of platforms/android/cordova-plugin-fcm/xxx-FCMPlugin.gradle
At the end of the file shows

dependencies {
compile 'com.google.firebase:firebase-core:9.2.0'
compile 'com.google.firebase:firebase-messaging:9.2.0'
}

Modify to,

dependencies {
compile 'com.google.firebase:firebase-core:15.+'
compile 'com.google.firebase:firebase-messaging:15.+'
}

Then recompile, hope it helps ^^

ionic2 ios xcode failed at Linking with duplicate symbols

ionic2 projects are very sensitive with its node_modules and dependencies, to me personally.
And bad luck came to me when i rename my project name. And the iOS platform has to be
recreate.

Running:
$ ionic cordova platform rm ios
$ ionic cordova platform add ios

Starting all my problems. After successfully running
$ cordova platform rm ios
$ corvoda build ios
Everything went smooth event i can archive and upload to TestFligtth

And the day after, i had to compile and release in Android. The 1st problem starts
the $ionic/core had thrown version is '4' expected is '3'. After several time of
remove node_modules/ dir and npm install with no luck. I decided to
$ npm cache clean --force
$ npm install
$ cordova platform rm android
$ cordova platform rm ios
$ cordova platform add android@6.3.0
$ cordova platform add ios@4.5.4

I don't really sure if that is the root of all evil, anyway the Android was smooth.
And i need to be sured that smooth to ios too. And there is something to be edited,
an error of _requiresUserActionForMediaPlayback at AppBackground.m
just remove the underscore ( _ ) char from the beginning or requiresUser..

And if you stumbled with linking problem, as it shows many duplicate vars
at the xcode build report, then simply go to build phase and type the keyword
e.g SOSPicker then it will shows 2 or more SOSPicker.m and remove the ones
that not use then rebuild.

Hope it helps

cordova build android, Error spawn EACCES

Reference too https://github.com/ionic-team/ionic-cli/issues/2835
cordova build --verbose android helps identifying a necessary
is the solution. It will shows which gradle being used.

As per my case `$ which gradle ` shows to /usr/local/bin/gradle but
the cordova execution refers to Android Studio' gradle.

Hope it help ^^