facebook / flipper

A desktop debugging platform for mobile developers.
https://fbflipper.com/
MIT License
13.31k stars 954 forks source link

[iOS] Support Physical iOS devices #262

Closed priteshrnandgaonkar closed 3 years ago

priteshrnandgaonkar commented 6 years ago

Currently for iOS flipper only supports debugging through simulators but not on physical devices. The issue is that we were not able to copy generated certificates in the mobile data partition where app can access it. More information about certificate exchange in Flipper is here.

marcin-kwasniak commented 5 years ago

When we can expect implementation? I saw commit "Add physical iOS support to internal build", does it mean that it will be possible to connect with flipper on iOS device with your compiled Flipper.app?

OleksiyA commented 5 years ago

One idea how we can do this: in iOS SDK code provide hook point for developers to implement logic "should connection from host XYZ be allowed?". Some developers would allow all connections and rely on WiFi router configuration to limit outside connections.

One more way: Use libmobiledevice to write files to mobile device directly (https://github.com/libimobiledevice/ifuse). This would require App to enable iTunes file sharing. Also iPhone have to be attached to computer by USB cable.

alecgorge commented 5 years ago

Could copying the generated certificate into the app bundle as a build step be another viable avenue?

digoreis commented 5 years ago

Guys, we have a news about this ? My suggestion is in iOS case use multipeerconnectivity..

jknoxville commented 5 years ago

The above suggestions could work. As Pritesh mentioned originally the only missing piece is deploying the files into the app container. That could indeed be done either as a build step, or by implementing the push and pull methods of this class: https://github.com/facebook/flipper/blob/master/src/fb-stubs/iOSContainerUtility.js by any means necessary.

There's work ongoing to open source the solution we're using for this internally, but I don't expect that to be ready until at least May of this year.

digoreis commented 5 years ago

@jknoxville I did a small study here. Thanks for the indications 😄

For to use MultipeerConnectivity, we have a small problem with the init of FlipperClient::_cppClient. Problem is that a discovery DNS protocol like Bonjour, always an async operation.

For the solution this, I research to create a FlipperDiscovery. This entity will create a connect, get all information and copy the certificate files. Then, to start FlipperClient with IP and files correct.

I'm working in a test solution but very slow 🐌 , I need to remember Obj-C and C++. 😅

bizzguy commented 5 years ago

I'm wondering if there is any updated on when iOS physical devices will be supported. Thanks.

alloy commented 4 years ago

More information about certificate exchange in Flipper is here.

@priteshrnandgaonkar Note that the link no longer works. Can you point me to the right place? Found it https://github.com/facebook/flipper/blob/378638a4510a9a93dbb0b8e121e231fc8e10eec4/docs/extending/establishing-a-connection.md#L19

jbfitb commented 4 years ago

Any update on this? This issue has been open for a year.5. It would be great to use on a physical device as our applications all require real hardware.

ghost commented 4 years ago

Any update?

jknoxville commented 4 years ago

Ok, let's get this done. I'll use this comment to list the outstanding tasks:

jknoxville commented 4 years ago

Ok, https://github.com/facebook/flipper/commit/5723553fba3a9fabb65cca0a68fab56702207ce6 adds the necessary code to the desktop app, so it can use idb to connect to the mobile app.

Btw, when I say idb, I mean https://github.com/facebook/idb which is a utility you will need to have installed, to use this.

It's in a disabled state at the moment (isAvailable == false) so we can address the other tasks above and make it production ready before enabling it by default.

Unless I'm forgetting anything, I think reverting e86a756 will bring back the port forwarding app and this should be sufficient to get everything generally working. All the other tasks above are niceties, testing and getting rid of rough edges.

I'll get to this when I can, but if anyone wants to contribute in the mean time, please feel free.

jknoxville commented 4 years ago

I have started a PR in https://github.com/facebook/flipper/pull/1217 to complete this.

If you checkout that branch, and have idb installed to usr/local/bin/idb, then it should work. We can't ship it yet, as it assumes idb is installed and isn't flexible about where.

However, since it works, that's the main problem solved, we just have to clean it up.

jknoxville commented 4 years ago

Now that https://github.com/facebook/flipper/commit/ab84bd563a39208a5f26ca7558221228507dc432 is merged this feature should be ready for use.

I still have to document it and add it to flipper-doctor, but if anyone wants to try it out, iI'd be grateful to hear if it's working for you.

Install idb from the link above, and then run flipper desktop from source. Go into settings, and configure the path to idb, which you should be able to get by running which idb in a terminal.

jbfitb commented 4 years ago

Awesome @jknoxville !! I'll try it out this morning. Thanks for your hard work!

jbfitb commented 4 years ago

@jknoxville I tried all day Friday, but couldn't get it to work (I think I found the problem). Here's what I did:

Installed IDB

First started off by installing idb by homebrew and pip3 from the instructions here https://github.com/facebook/idb

brew tap facebook/fb
brew install idb-companion
pip3 install fb-idb

which idb gives:

/usr/local/bin/idb

and that seems to match your install directory given above. ✅

Run Flipper from master

Cloned the repo, cd desktop and ran yarn install followed by yarn start

Using yarn version 1.22.4 and node version v14.4.0

Flipper Electron app appeared! ✅

Created a new Sample iOS project and installed flipper via cocoapods

Podfile (Copied from docs):

project 'SampleFlipperApp.xcodeproj'
flipperkit_version = '0.45.0'

target 'SampleFlipperApp' do
  platform :ios, '9.0'

  # It is likely that you'll only want to include Flipper in debug builds,
  # in which case you add the `:configuration` directive:
  pod 'FlipperKit', '~>' + flipperkit_version, :configuration => 'Debug'
  pod 'FlipperKit/FlipperKitLayoutComponentKitSupport', '~>' + flipperkit_version, :configuration => 'Debug'
  pod 'FlipperKit/SKIOSNetworkPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
  pod 'FlipperKit/FlipperKitUserDefaultsPlugin', '~>' + flipperkit_version, :configuration => 'Debug'
  # ...unfortunately at this time that means you'll need to explicitly mark
  # transitive dependencies as being for debug build only as well:
  pod 'Flipper-DoubleConversion', :configuration => 'Debug'
  pod 'Flipper-Folly', :configuration => 'Debug'
  pod 'Flipper-Glog', :configuration => 'Debug'
  pod 'Flipper-PeerTalk', :configuration => 'Debug'
  pod 'CocoaLibEvent', :configuration => 'Debug'
  pod 'boost-for-react-native', :configuration => 'Debug'
  pod 'OpenSSL-Universal', :configuration => 'Debug'
  pod 'CocoaAsyncSocket', :configuration => 'Debug'
  # ...except, of course, those transitive dependencies that your
  # application itself depends, e.g.:
  pod 'ComponentKit', '~> 0.30'

  # If you use `use_frameworks!` in your Podfile,
  # uncomment the below $static_framework array and also
  # the pre_install section.  This will cause Flipper and
  # it's dependencies to be built as a static library and all other pods to
  # be dynamic.
  #
  # NOTE Doing this may lead to a broken build if any of these are also
  #      transitive dependencies of other dependencies and are expected
  #      to be built as frameworks.
  #
  # $static_framework = ['FlipperKit', 'Flipper', 'Flipper-Folly',
  #   'CocoaAsyncSocket', 'ComponentKit', 'Flipper-DoubleConversion',
  #   'Flipper-Glog', 'Flipper-PeerTalk', 'Flipper-RSocket', 'Yoga', 'YogaKit',
  #   'CocoaLibEvent', 'OpenSSL-Universal', 'boost-for-react-native']
  #
  # pre_install do |installer|
  #   Pod::Installer::Xcode::TargetValidator.send(:define_method, :verify_no_static_framework_transitive_dependencies) {}
  #   installer.pod_targets.each do |pod|
  #       if $static_framework.include?(pod.name)
  #         def pod.build_type;
  #           Pod::BuildType.static_library
  #         end
  #       end
  #     end
  # end
end

AppDelegate


import FlipperKit
import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        let client = FlipperClient.shared()!
        let layoutDescriptorMapper = SKDescriptorMapper(defaults: ())
        FlipperKitLayoutComponentKitSupport.setUpWith(layoutDescriptorMapper)
        client.add(FlipperKitLayoutPlugin(rootNode: application, with: layoutDescriptorMapper!))
        client.add(FKUserDefaultsPlugin.init(suiteName: "sampleApp"))
        client .start()
        return true
    }

Builds and runs. ✅

Results

It failed trying to connect. ❌

Screen Shot 2020-06-08 at 8 33 16 AM Screen Shot 2020-06-08 at 8 33 22 AM

However, noticed this in the logs:

flipper: Desktop failed to provide certificates. Error from flipper desktop:
A problem with idb has ocurred. Please run `sudo rm -rf /tmp/idb*` and `sudo yum install -y fb-idb` to update it, if that doesn't fix it, post in Flipper Support.

I tried upgrading idb via pip:

sudo pip3 install fb-idb --upgrade

That didn't work. I then opened up the chrome logs and saw some errors:

src/init.bundle?platform=web&dev=true&minify=false:359273 Error: Feature not implemented
    at getUser (src/init.bundle?platform=web&dev=true&minify=false:89214)
    at _default (src/init.bundle?platform=web&dev=true&minify=false:359269)
    at src/init.bundle?platform=web&dev=true&minify=false:242096
    at Array.map (<anonymous>)
    at _default (src/init.bundle?platform=web&dev=true&minify=false:242096)
    at src/init.bundle?platform=web&dev=true&minify=false:807
    at Object.rehydrate (src/init.bundle?platform=web&dev=true&minify=false:101114)
    at _rehydrate (src/init.bundle?platform=web&dev=true&minify=false:100464)
    at src/init.bundle?platform=web&dev=true&minify=false:100489

And this:

iOSContainerUtility.tsx:138 Error: Command failed: /usr/local/bin/idb --log DEBUG file pull --udid <UDID> --bundle-id com.example.SampleFlipperApp 'Library/Application Support/sonar/app.csr' '/var/folders/vk/_6zb4sfj1mbfgh49t0ypcfcm0000gn/T/tmp-34690-bN9l5vPy98tb/app.csr'
usage: idb [-h]
           {add-media,approve,boot,clear-keychain,companion,connect,contacts,crash,daemon,debugserver,describe,disconnect,dsym,dylib,file,focus,framework,install,instruments,kill,launch,list-apps,list-targets,log,open,pull,push,record,screenshot,set-location,terminate,ui,uninstall,video,record-video,xctest}
           ...
idb: error: argument root_command: invalid choice: 'DEBUG' (choose from 'add-media', 'approve', 'boot', 'clear-keychain', 'companion', 'connect', 'contacts', 'crash', 'daemon', 'debugserver', 'describe', 'disconnect', 'dsym', 'dylib', 'file', 'focus', 'framework', 'install', 'instruments', 'kill', 'launch', 'list-apps', 'list-targets', 'log', 'open', 'pull', 'push', 'record', 'screenshot', 'set-location', 'terminate', 'ui', 'uninstall', 'video', 'record-video', 'xctest')

    at ChildProcess.exithandler (child_process.js:308)
    at ChildProcess.emit (events.js:210)
    at maybeClose (internal/child_process.js:1021)
    at Socket.<anonymous> (internal/child_process.js:430)
    at Socket.emit (events.js:210)
    at Pipe.<anonymous> (net.js:658)

In addition to the same error I was seeing in the iOS console:

Client setup error: A problem with idb has ocurred. Please run `sudo rm -rf /tmp/idb*` and `sudo yum install -y fb-idb` to update it, if that doesn't fix it, post in Flipper Support. while setting up client: iOS:iPhone:SampleFlipperApp

Possible fix?

I tried the same idb command in terminal, and I think

/usr/local/bin/idb --log DEBUG file pull

should be

/usr/local/bin/idb file pull --log DEBUG 

Once I made that change, idb worked in terminal, and pulled the security cert!

jbfitb commented 4 years ago

This change seemed to work!

diff --git a/desktop/app/src/utils/iOSContainerUtility.tsx b/desktop/app/src/utils/iOSContainerUtility.tsx
index 0ecd983b..83efaf56 100644
--- a/desktop/app/src/utils/iOSContainerUtility.tsx
+++ b/desktop/app/src/utils/iOSContainerUtility.tsx
@@ -77,7 +77,7 @@ async function push(
   return wrapWithErrorMessage(
     reportPlatformFailures(
       safeExec(
-        `${idbPath} --log ${idbLogLevel} file push --udid ${udid} --bundle-id ${bundleId} '${src}' '${dst}'`,
+        `${idbPath} file push --log ${idbLogLevel} --udid ${udid} --bundle-id ${bundleId} '${src}' '${dst}'`,
       )
         .then(() => {
           return;
@@ -99,7 +99,7 @@ async function pull(
   return wrapWithErrorMessage(
     reportPlatformFailures(
       safeExec(
-        `${idbPath} --log ${idbLogLevel} file pull --udid ${udid} --bundle-id ${bundleId} '${src}' '${dst}'`,
+        `${idbPath} file pull --log ${idbLogLevel} --udid ${udid} --bundle-id ${bundleId} '${src}' '${dst}'`,
       )
         .then(() => {
           return;

But getting an error while trying to inspect a layout:

Client.tsx:381 
Error received from device : Connection Inspector not found for method execute + 
Device Stack Trace: undefined deviceError
onMessage @ Client.tsx:381
fireAndForget @ server.tsx:290
fireAndForget @ RSocketMachine.js:45
_handleFireAndForget @ RSocketMachine.js:674
_handleStreamFrame @ RSocketMachine.js:613
RSocketMachineImpl._handleFrame @ RSocketMachine.js:192
onNext @ RSocketServer.js:219
onNext @ Flowable.js:233
(anonymous) @ RSocketTcpClient.js:50
(anonymous) @ RSocketTcpClient.js:50
RSocketTcpConnection._handleData @ RSocketTcpClient.js:49
emit @ events.js:210
addChunk @ _stream_readable.js:308
readableAddChunk @ _stream_readable.js:289
Readable.push @ _stream_readable.js:223
onStreamRead @ internal/stream_base_commons.js:182
jknoxville commented 4 years ago

Thanks @jbfitb that is super helpful!

For the idb issue, the argument order was changed since the latest public idb release came out: https://github.com/facebook/idb/commit/9c1a0facb23a275f3d798c792a98a29d132e12b1

I've had a word with the idb guys and they're publishing a new release now, so when thats out, an idb upgrade will solve that problem.

For the layout issue, it seems at first glance to be not specifically device-related (though it might be indirectly related). Can you confirm whether or not that exact app and flipper combination works in a simulator?

jbfitb commented 4 years ago

I restarted the iOS app and it seems to be working!

jbfitb commented 4 years ago

@jknoxville: I installed the new version of IDB, but it looks like it doesn't run:

$ idb  -h
Traceback (most recent call last):
  File "/usr/local/bin/idb", line 5, in <module>
    from idb.cli.main import main
  File "/usr/local/lib/python3.7/site-packages/idb/cli/__init__.py", line 15, in <module>
    from idb.common.companion import Companion
  File "/usr/local/lib/python3.7/site-packages/idb/common/companion.py", line 14, in <module>
    from idb.common.format import target_description_from_json
  File "/usr/local/lib/python3.7/site-packages/idb/common/format.py", line 22, in <module>
    from treelib import Tree
ModuleNotFoundError: No module named 'treelib'

Installing treelib fixed the issue:

pip3 install treelib

is it missing a dependency in pip?

c-ryan747 commented 4 years ago

@jbfitb Thanks for the report, a new version of idb was published yesterday with a dependency missing. I've yanked this release and will submit a new one soon with a correction

stigi commented 4 years ago

Chiming in here about idb. I'm using pyenv to manage different Python versions and it will install idb into $HOME/.pyenv/shims/idb. Is there a way to make the ids path not statically point to /usr/local/bin/idb but use /usr/bin/env idb?

Also I updated the idb path in the settings to point to where the binary is on my system, but doctor is still complaining that it's not installed correctly. Running idb from the command line seems to work though.

baveku commented 4 years ago

@jknoxville I have installed idb_companion 1.0.14 and fb-idb-1.0.12, But it's still erroring on 0.46.0:

Client setup error: No iOS devices found while setting up client: iOS:iPhone:TestApp
jknoxville commented 4 years ago

@stigi The doctor does a basic check that <your_idb_path> --help runs without an error (code here). What do you get if you run the following?

$HOME/.pyenv/shims/idb
echo $?
jknoxville commented 4 years ago

@baveku That error comes from here, which is right after parsing the output from instruments, so it would seem most likely instruments isn't including your device in it's output, or it is and we're failing to parse it.

What do you get if you run instruments -s devices in a terminal?

baveku commented 4 years ago
> instruments -s devices
Known Devices:
MacBook Pro của Bách [NNN-NNNN-NNNN] // Real Device
Bách I Phôn (13.5.1) [NNN-NNNN-NNNN] // Real Device
Apple TV (13.4) [DADA0D33-0AD5-4131-8CC9-46BFB859EA05] (Simulator)
Apple TV 4K (13.4) [F0FD0AE1-BDD7-4FCF-A7F5-F555A1F77900] (Simulator)
v.v....

@jknoxville we're missing something, right? 🙃

jknoxville commented 4 years ago

Aha! Thanks @baveku Assuming Bách I Phôn is vietnamese for iPhone then that's the issue. Flipper is currently looking for iPhone or iPad.

I think we should be able to swap in idb's list-targets command instead of instruments, and then we won't need to filter on device name at all.

baveku commented 4 years ago

Aha! Thanks @baveku Assuming Bách I Phôn is vietnamese for iPhone then that's the issue. Flipper is currently looking for iPhone or iPad.

I think we should be able to swap in idb's list-targets command instead of instruments, and then we won't need to filter on device name at all.

OMG, I can not stop laughing... I changed my iPhone's name to "iPhone". Wow It's work, It's magical.

monk-lee commented 4 years ago

I have installed idb_companion 1.0.14 and fb-idb-1.0.12, But it's still erroring on 0.46.0:

Client setup error: A problem with idb has ocurred. Please run sudo rm -rf /tmp/idb* and sudo yum install -y fb-idb to update it, if that doesn't fix it, post in Flipper Support. Using yarn version 1.22.4 and node version v14.4.0

I followed all of the above steps, but the error does not disappear.

Even if the device is renamed to iPhone, the error is the same.

baveku commented 4 years ago

@asor7007, I rename to iPhone then my iPhone is connected to Flipper but yes, it's not working. I have a problem the same as you

esensei commented 4 years ago

Same issue, ios 14. Up

mvrdrew commented 4 years ago

I've managed to make some progress on my local machine. Based on what @jknoxville mentioned about a new release of idb that should fix the command line parameters issue, I've installed the latest idb (v1.0.14 directly from the tarball here (https://github.com/facebook/idb/releases) - incidentally, the last version of idb published to PyPI is 1.0.12, should the new versions be available there as well?

I'm still getting the Client setup error: and an endless spinning connection wheel for my app, however it is showing me logs from my device and I'm able to view the layout in the React DevTools section. This feels like progress to me, though something is still missing somewhere.

Hope this helps someone else!

Edit: actually, I've just downgraded to v1.0.12 and I was getting the same results on that version too... ignore me :(

c-ryan747 commented 4 years ago

(v1.0.14 directly from the tarball here (https://github.com/facebook/idb/releases) - incidentally, the last version of idb published to PyPI is 1.0.12

These have got slightly out of sync, 1.0.14 is the latest version of the companion and 1.0.12 is the latest version of the cli

What happens if you open a shell and try to run commands like

idb list-targets
idb list-apps --udid XXXX
...
mvrdrew commented 4 years ago

These have got slightly out of sync, 1.0.14 is the latest version of the companion and 1.0.12 is the latest version of the cli

The latest published version. If you look at the releases on the idb github page the latest version is 1.0.14. I've tried installing them both with the same results.

What happens if you open a shell and try to run commands like

idb list-targets

This one gives me a list of available devices, as expected.

idb list-apps --udid XXXX

This one gives me an error:

Failed to get list of applications 0xe800002d (Could not send a message to the device.)
c-ryan747 commented 4 years ago

@lawrencelomax Do you know why we might get that error message?

We should also publish a new version of the companion with you're more recent changes in this space

foufrix commented 4 years ago

Hi, I have installed idb_companion 1.0.14 and fb-idb-1.0.12with Flipper 0.51.0 When launching app it get stuck here : image

when running idb list-targetsi see my phone on the list and it's said booted. I'm running on iphone 8 iOS 13.1.3

when running instruments -s devices i also see my device

Is there something special i need to do to make flipper work when app is running on real device ?

adapptor-kurt commented 4 years ago

Tried idb_companion 1.0.14, fb-idb-1.0.12 with Flipper 0.52.1 too and get the same problem as @foufrix.

I'm a bit ignorant about what this is doing, but I can see the idb pull command fail in Flipper's Developer Tools window. If I execute this command in terminal I can make it fail with the same error, but I noticed that if I do an idb connect <udid> just before it will work. This idb connect in the terminal doesn't seem to help Flipper, but if I edit iOSContainerUtility.tsx to do the connect first then the pull will usually succeed and I can debug RN apps on the device.

There are other problems, such as idb_companion daemons not terminating and issues with connection delays. I have some code changes which work around these issues but it's a huge kludge, and really I don't know what any of this is really doing. Is anyone looking into fixing this properly? I imagine that this is actually an issue with idb, so does anyone have any success with older versions of fb-idb or idb_companion?

adapptor-kurt commented 4 years ago

If anyone is interested, I have turned my workarounds into a script. Just configure Flipper to use this as idb instead https://gist.github.com/adapptor-kurt/82384af67ee876d7d6d6239180127ff4

The actual idb needs to be in your PATH.

mweststrate commented 4 years ago

cc @jknoxville could we Doctor something here?

jknoxville commented 4 years ago

Thanks for posting the script!

Regarding a doctor, I don't know of much we can do, because in these cases where idb fails, it's a bit of a black box.

I think the right way to deal with this is for Flipper to do manual companion management, which is similar to what @adapptor-kurt is doing, but as I understand it we would do the following:

For every device we detect, run a single idb companion --udid XXXX process and leave that running for the duration the device is connected. This should output a port number for that device's companion. We'll keep those port numbers in memory so we know which port to use for each connected device.

Then whenever running any idb commands, we can specify --companion <port> with the port for that device's companion process.

I believe this will achieve the same thing as running idb connect as done by @adapptor-kurt , but the difference is that we'll also be managing the companion processes explicitly (rather than it happening implicitly inside idb), so there should be less to go wrong behind the scenes. We'll also see any errors that get output from the companion process, which should help when debugging.

  1. @adapptor-kurt It should be possible to do this right inside your script, which would validate whether it does actually improve the reliability.
  2. It sounds like it's a good idea to bring this functionality inside Flipper anyway, so that should be the next step. If anyone would like to make a start on that, that would be great.
punksta commented 4 years ago

Spent 1 hour to configure idb and flipper to find that it doesn't work on physical device 😞

randomBrainstormer commented 3 years ago

This solution from StackOverflow worked for me. pip install --upgrade protobuf fixed the proto version conflict.

a-sane commented 3 years ago

I had this error:

Client setup error: A problem with idb has ocurred. Please run sudo rm -rf /tmp/idb* and sudo yum install -y fb-idb to update it, if that doesn't fix it, post in Flipper Support

tried different workarounds but nothing helped, after all I restarted the device and now it's working 🎉

Update: it looks like rename device to iPhone also necessary

i-asimkhan commented 3 years ago

Guys please update clearly if Flipper doesn't works with real devices. Developers spent hours for this.

i-asimkhan commented 3 years ago

What's the use of this without real devices?

raldred commented 3 years ago

I've tried with @adapptor-kurt workaround script and still no luck with my device.

iPhone | 5e2559865bbaa1ffd9cbad9919d719d49a5e5595 | Booted | device | iOS 14.3 | arm64 | No Companion Connected

Dev tools logs 'timed out waiting for device unknown for client Residently'

image

kcolton commented 3 years ago

Renaming the device to "iPhone" followed by restarting the idb daemon (idb kill) got the device connected for me. How dumb.

tylercote commented 3 years ago

I have been trying to get Flipper working with a real iOS device, and started with a fresh React Native (0.63.4) project using the official TypeScript template.

Using: idb-companion - facebook/fb/idb-companion: stable 1.0.14 fb-idb Version: 1.0.12

This is the first error I encounter.

image

As previously suggested, by running idb connect <UID> I can get this error to be resolved (temporarily). Next, I see this error.

image

Does anyone currently have Flipper working with a real iOS device? If so, what version of the supporting packages are you running? Has anyone run into this JSON error?

@jknoxville Is this something that is still actively being worked on? I am seeing that it might be working for some people, but not for others.

mweststrate commented 3 years ago

Hi folks, adding more comments here only adds noise. I just verified that https://github.com/facebook/flipper/tree/master/react-native/ReactNativeFlipperExample works out of the box, which is the case, so for more issues please file a fresh issue, including device & flipper logs, screenshots and the steps you took. Always make sure you are running a debug build as documented here: https://reactnative.dev/docs/running-on-device. Since the original issue has been solved, I'm closing this issue and locking it so that this remains the last comment.

@tylercote / @raldred if you are still stuck, would you mind moving your comment to a fresh issue so that we can handle one problem in one thread?