Skip to content

updates#4

Open
basemosama wants to merge 118 commits into
sourcya:masterfrom
wang-bin:master
Open

updates#4
basemosama wants to merge 118 commits into
sourcya:masterfrom
wang-bin:master

Conversation

@basemosama

Copy link
Copy Markdown
Collaborator

No description provided.

cenumi and others added 30 commits October 14, 2024 16:30
Android: support find add-to-app mode flutter.sdk
flutter analyze lib/src/player.dart: Color.red is deprecated, remove
only stable and beta
since flutter 3.27, only 1 implementation will be included(see #192). multiple implementations will conflict and fail to build. now you have to add fvp to your app's direct dependencies.
should fix #170, #196.
no arm64 in flutter-action
when exiting process, invalid gl context map is accessed
fix crash when killing app on iOS
wang-bin and others added 30 commits December 31, 2025 11:48
* add ohos support: native plugin, cmake deps, dart library loading, asset uri, decoders

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/c80e2b02-02c3-461e-b42e-5d57a5c3fdaa

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* consolidate ohos/android cases in lib.dart

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/c80e2b02-02c3-461e-b42e-5d57a5c3fdaa

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* restructure ohos directory with proper OHOS Flutter plugin layout and native C++ NAPI support

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/ef1c213b-5b60-48b4-99c5-c3c804e2db89

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* fix ohos native: use napi_module_register+constructor, HiLog, correct library links, abiFilters

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/9d6b16e9-81aa-45a1-b44e-c689b61dad7f

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* fix ohos: use explicit %{public}lld format for HiLog int64 logging

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/9d6b16e9-81aa-45a1-b44e-c689b61dad7f

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* ohos: arm64-v8a only, keep C++20/cmake 3.10, revert log changes, copyright 2026

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/bf7fd620-dfce-4e1e-b381-7e616ab5d6d4

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* ohos: use NAPI_MODULE macro, set OH decoder, export symbols in fvp_plugin.h

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/96c70a2a-728f-4489-aa87-8ba64606a28c

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* ohos: fix CMake 3.17, libnative_window, hvigorfile.ts, copyright years, mdk-sdk-ohos.7z

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/d72442c9-83e4-43cc-bed3-8c4a9a5d85d7

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>
* Initial plan

* Change plugin library output name to fvp and export MdkSetKey

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/b1b7d524-fb7d-46a5-b750-f65b516b56aa

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* Remove MDK_KEY from native plugins; add setLicenseKey() in Dart

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/31fcc672-34d1-45ca-a71b-a19d59c1815c

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* Move MDK_KEY injection into MdkVideoPlayerPlatform._setupMdk(); remove setLicenseKey from global.dart

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/24bfef81-0618-4a86-a979-9431b192dc7e

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* Update default MDK_KEY to new value

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/27f20756-cb4f-4dcd-8040-ae5fa3eeedd9

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

* Simplify mdkKey initialization using null-coalescing

Agent-Logs-Url: https://github.com/wang-bin/fvp/sessions/ed7d1073-7872-4ec3-b7ad-09ad6aaea592

Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: wang-bin <785206+wang-bin@users.noreply.github.com>
affects linux, android, ohos release build
* fix(darwin): change SPM to dynamically link the framework

With the introduction of SPM the framework gets statically linked resulting in '/usr/lib/fvp.framework/fvp' (no such file, not in dyld cache), 'fvp.framework/fvp' (no such file).

This PR changes this so that it gets dynamically linked and fixes this issue.

Devices tested:
- iOS Simulator
- Physical iPhone (Debug)
- Physical iPhone (Release)

* Update darwin/fvp/Package.swift

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…ection (#367)

* fix(windows): extract mdk-sdk via realpath to avoid CMake symlink rejection

On Flutter Windows, CMAKE_CURRENT_SOURCE_DIR is reached through the generated
plugin symlink (.../flutter/ephemeral/.plugin_symlinks/fvp). Newer CMake's
`cmake -E tar` extracts with ARCHIVE_EXTRACT_SECURE_SYMLINKS and refuses to
write entries through that symlinked directory:

    CMake Error: Problem with archive_write_header():
      Cannot extract through symlink ...\.plugin_symlinks\fvp
    Failed to extract mdk-sdk.

Resolve CMAKE_CURRENT_SOURCE_DIR to its real (non-symlinked) path with
get_filename_component(... REALPATH) and use it as the tar WORKING_DIRECTORY,
so extraction no longer traverses the symlink. REALPATH (not file(REAL_PATH))
keeps this compatible with cmake_minimum_required(VERSION 3.17).

* quote paths in mdk-sdk extraction execute_process

Per review (paths with spaces): quote MDK_SDK_SAVE and the resolved
WORKING_DIRECTORY so extraction doesn't break on paths containing spaces.
)

darwin/fvp/Resources/PrivacyInfo.xcprivacy was a symlink to
../../PrivacyInfo.xcprivacy, which points outside the SwiftPM package
root (darwin/fvp). When a host app builds with Swift Package Manager,
Flutter symlinks each plugin package into
<app>/macos/Flutter/ephemeral/Packages/.packages/<pkg>. Xcode then
resolves the resource's escaping symlink relative to that symlinked
package location and looks for it at .packages/PrivacyInfo.xcprivacy,
which does not exist:

  error: .../ephemeral/Packages/.packages/PrivacyInfo.xcprivacy:
  No such file or directory (in target 'fvp_fvp' from project 'fvp')

so `flutter build macos`/`ios` fails for any app using SwiftPM.

Source files under Sources/fvp are also symlinks but compile fine,
because Xcode follows symlinks for compile inputs; only the .process
resource copy phase breaks on the escaping link.

Replace the symlink with a real copy of the manifest (the same pattern
every first-party plugin uses, e.g. connectivity_plus ships a real
PrivacyInfo.xcprivacy inside Sources/<target>). The CocoaPods path is
unaffected: the podspec still references darwin/PrivacyInfo.xcprivacy.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants