当前位置: 首页 > news >正文

php语言做的大网站网络推广哪个平台最好

php语言做的大网站,网络推广哪个平台最好,北京专业网站设计报价,莆田兼职做外贸网站C/C制作macOS .app 一、 .app APP其实是一个文件夹结构,只不过mac的界面中让它看起来像一个单独的文件。 在shell终端或者右键查看包结构即可看到APP的目录结构。 通常的app目录结构如下: _CodeSignature, CodeResources 一般为Mac APP Store上架程序…

C/C++制作macOS .app

一、 .app

APP其实是一个文件夹结构,只不过mac的界面中让它看起来像一个单独的文件。
在shell终端或者右键查看包结构即可看到APP的目录结构。

通常的app目录结构如下:

  1. _CodeSignature, CodeResources
    • 一般为Mac APP Store上架程序所包含。里面含有数字签名,以防非法篡改。
  2. Frameworks
    • 一般放置了此程序所使用的第三方FrameWork。
  3. Info.plist
    • 包含了一个程序的基本信息,如最低系统版本要求、版本号,copyright。
    • 也可能包含程序的类型信息,比如这个文件如果有LSUIElement字段并且值为TRUE,则这个程序启动后不会在Dock上显示图标或图标下有表示此程序正在运行的小亮点。
  4. MacOS文件夹
    • 包含了此应用程序真正的可执行文件。一个程序可能包含不只一个可执行文件。
  5. Resources
    • 资源文件,图标,语言包等其他文件,这个没有严格的限制。

参考博客:https://blog.51cto.com/maxma/5708529

二、 实例分析

例如WPS,可以观察到,wps中有一个SharedSupport目录,还包含多个.app:
在这里插入图片描述

QQ也是,不过.app在别的路径:
在这里插入图片描述

ToDesk.app的Info.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>Application is agent(UI Element)</key><false/><key>BuildMachineOSBuild</key><string>22A380</string><key>CFBundleDevelopmentRegion</key><string>en</string><key>CFBundleDisplayName</key><string>ToDesk</string><key>CFBundleExecutable</key><string>ToDesk</string><key>CFBundleIconFile</key><string>ToDesk</string><key>CFBundleIconName</key><string>ToDesk</string><key>CFBundleIdentifier</key><string>com.youqu.todesk.mac</string><key>CFBundleInfoDictionaryVersion</key><string>6.0</string><key>CFBundleName</key><string>ToDesk</string><key>CFBundlePackageType</key><string>APPL</string><key>CFBundleShortVersionString</key><string>4.7.2.1</string><key>CFBundleSupportedPlatforms</key><array><string>MacOSX</string></array><key>CFBundleURLTypes</key><array><dict><key>CFBundleTypeRole</key><string>Editor</string><key>CFBundleURLName</key><string>toc</string><key>CFBundleURLSchemes</key><array><string>todesk</string></array></dict></array><key>CFBundleVersion</key><string>921</string><key>DTCompiler</key><string>com.apple.compilers.llvm.clang.1_0</string><key>DTPlatformBuild</key><string>14B47b</string><key>DTPlatformName</key><string>macosx</string><key>DTPlatformVersion</key><string>13.0</string><key>DTSDKBuild</key><string>22A372</string><key>DTSDKName</key><string>macosx13.0</string><key>DTXcode</key><string>1410</string><key>DTXcodeBuild</key><string>14B47b</string><key>ITSAppUsesNonExemptEncryption</key><false/><key>LSApplicationCategoryType</key><string>public.app-category.utilities</string><key>LSMinimumSystemVersion</key><string>10.11</string><key>NSAppTransportSecurity</key><dict><key>NSAllowsArbitraryLoads</key><true/></dict><key>NSCameraUsageDescription</key><string>是否允许访问摄像头?</string><key>NSMainNibFile</key><string>MainMenu</string><key>NSMainStoryboardFile</key><string>MainMenu</string><key>NSMicrophoneUsageDescription</key><string>是否允许访问麦克风?</string><key>NSPrincipalClass</key><string>NSApplication</string><key>NSRequiresAquaSystemAppearance</key><string>true</string><key>SUAllowsAutomaticUpdates</key><false/><key>SUAutomaticallyUpdate</key><false/><key>SUEnableInstallerLauncherService</key><true/><key>SUEnableSystemProfiling</key><true/><key>SUFeedURL</key><string>http://dl.todesk.com/macos/sparkletestcast.xml</string><key>SUPublicEDKey</key><string>pz7QOaRHU3QI0Nq7IElJPP8WFl52KAFfRNz1D+j1McA=</string>
</dict>
</plist>

三、 用cmake 构建 .app

下载demo示例

以构建具有两个可执行程序的.app为例:

1. 目录结构

其中MacOSXBundleInfo.plist.in是cmake安装目录下自带的Info.plist模板(例如通过homebrew安装的路径是/opt/homebrew/share/cmake/Modules/MacOSXBundleInfo.plist.in

cmake中.in文件一般是模板文件,在执行cmake时,会用CMakeLists.txt中的变量替换模板中的变量。

yq@yqdeMac:~/desktop/ipc$ ls -l
total 72
-rw-r--r--@ 1 yq  staff   986  4  8 19:10 CMakeLists.txt
-rw-r--r--  1 yq  staff  1214  4  8 15:51 MacOSXBundleInfo.plist.in
-rw-r--r--@ 1 yq  staff    27  4  8 17:56 ReaderWindow.cpp
-rw-r--r--@ 1 yq  staff  1061  4  8 20:09 ReaderWindow.hpp
-rw-r--r--@ 1 yq  staff    27  4  8 17:55 WriterWindow.cpp
-rw-r--r--@ 1 yq  staff  1331  4  8 19:08 WriterWindow.hpp
-rw-r--r--@ 1 yq  staff    48  4  8 18:01 config.hpp
-rw-r--r--@ 1 yq  staff   172  4  8 19:10 reader.cpp
-rw-r--r--@ 1 yq  staff   821  4  8 19:50 writer.cpp

2. CMakeLists.txt:

cmake_minimum_required(VERSION 3.20)
project(TestIPC)set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTORCC ON)set(CMAKE_PREFIX_PATH "/Library/Qt/5.15.4_macos_arm64")
find_package(Qt5 REQUIRED COMPONENTS Widgets)##### Write端
##添加writer构建目标,同时作为app的主程序
add_executable(${PROJECT_NAME} MACOSX_BUNDLE writer.cpp WriterWindow.cpp)##填写.app的信息
set(MACOSX_BUNDLE_ICON_FILE MyIcon.icns)
set(MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/MacOSXBundleInfo.plist.in)
set_target_properties(${PROJECT_NAME} PROPERTIESMACOSX_BUNDLE_INFO_PLIST ${MACOSX_BUNDLE_INFO_PLIST}MACOSX_BUNDLE_BUNDLE_NAME ${PROJECT_NAME}MACOSX_BUNDLE_BUNDLE_VERSION "5.20"MACOSX_BUNDLE_SHORT_VERSION_STRING "VersionString"MACOSX_BUNDLE_GUI_IDENTIFIER "com.yangqing.Test"XCODE_ATTRIBUTE_ENABLE_HARDENED_RUNTIME YES
)
target_link_libraries(${PROJECT_NAME} PRIVATE Qt::Widgets)## 链接Qt#### Read端
set(EXE2 reader)
add_executable(${EXE2} reader.cpp ReaderWindow.cpp)## 添加reader构建目标
target_link_libraries(${EXE2} PRIVATE Qt::Widgets)## 链接Qt##修改生成路径
#set_target_properties(${EXE2} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${PROJECT_NAME}.app/Contents/MacOS")

3. 构建

$ mkdir build && cd build
$ cmake ../
$ cmake --build .

生成了TestIPC以及一个可执行文件reader
在这里插入图片描述

若要将reader也加入到TestIPC,可以额外编写脚本。

或者,在CMakeLists.txt一并完成:

set_target_properties(${EXE2} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${PROJECT_NAME}.app/Contents/MacOS")

在这里插入图片描述

四、将app制作成dmg

  1. 在启动器选择“磁盘工具”;
    在这里插入图片描述

  2. 顶部栏选择新建映像–>空白映像
    在这里插入图片描述

3.命名后点存储
在这里插入图片描述

4.右键打开TestIPC,把app拖进去,Applications的软链接也拖进去
在这里插入图片描述

  1. 推出
    在这里插入图片描述

  2. 在磁盘工具顶部选择"映像"–>“转换”
    在这里插入图片描述在这里插入图片描述

即可得到制作后的dmg,还可以更换背景图片等。


文章转载自:
http://savable.xtqr.cn
http://inoccupation.xtqr.cn
http://gainly.xtqr.cn
http://odontalgic.xtqr.cn
http://sentimentalise.xtqr.cn
http://supreme.xtqr.cn
http://extractor.xtqr.cn
http://uncart.xtqr.cn
http://prioress.xtqr.cn
http://adjudicator.xtqr.cn
http://mythologize.xtqr.cn
http://robbery.xtqr.cn
http://banneret.xtqr.cn
http://labyrinthine.xtqr.cn
http://obduracy.xtqr.cn
http://promissory.xtqr.cn
http://unlash.xtqr.cn
http://spirilla.xtqr.cn
http://dug.xtqr.cn
http://plasmolyze.xtqr.cn
http://numerary.xtqr.cn
http://bluish.xtqr.cn
http://polytheism.xtqr.cn
http://udt.xtqr.cn
http://obtestation.xtqr.cn
http://pli.xtqr.cn
http://implication.xtqr.cn
http://rounce.xtqr.cn
http://sonly.xtqr.cn
http://betain.xtqr.cn
http://signaling.xtqr.cn
http://waif.xtqr.cn
http://coursing.xtqr.cn
http://mullioned.xtqr.cn
http://jazzily.xtqr.cn
http://chrissie.xtqr.cn
http://postpose.xtqr.cn
http://anchorperson.xtqr.cn
http://aortic.xtqr.cn
http://bunny.xtqr.cn
http://dissertation.xtqr.cn
http://puerpera.xtqr.cn
http://petcock.xtqr.cn
http://countdown.xtqr.cn
http://lassock.xtqr.cn
http://disputant.xtqr.cn
http://orthopsychiatry.xtqr.cn
http://opportune.xtqr.cn
http://offering.xtqr.cn
http://harmonist.xtqr.cn
http://stupor.xtqr.cn
http://erythromelalgia.xtqr.cn
http://deduce.xtqr.cn
http://dulcet.xtqr.cn
http://setting.xtqr.cn
http://mystagogy.xtqr.cn
http://mahaleb.xtqr.cn
http://typhomalarial.xtqr.cn
http://name.xtqr.cn
http://sheriffwick.xtqr.cn
http://amblygonite.xtqr.cn
http://menisci.xtqr.cn
http://nightcapped.xtqr.cn
http://gdmo.xtqr.cn
http://visit.xtqr.cn
http://guttate.xtqr.cn
http://sandhog.xtqr.cn
http://shearling.xtqr.cn
http://hypnotherapy.xtqr.cn
http://absurdly.xtqr.cn
http://kafir.xtqr.cn
http://exoenzyme.xtqr.cn
http://orientalist.xtqr.cn
http://beguine.xtqr.cn
http://mousebird.xtqr.cn
http://recalculate.xtqr.cn
http://standpatter.xtqr.cn
http://hyperthyroid.xtqr.cn
http://fifteenfold.xtqr.cn
http://climacteric.xtqr.cn
http://fleabite.xtqr.cn
http://then.xtqr.cn
http://grissel.xtqr.cn
http://tetrasepalous.xtqr.cn
http://paperwork.xtqr.cn
http://perspicacity.xtqr.cn
http://reincorporate.xtqr.cn
http://watery.xtqr.cn
http://clairvoyante.xtqr.cn
http://passionless.xtqr.cn
http://insessorial.xtqr.cn
http://offprint.xtqr.cn
http://yaffle.xtqr.cn
http://misogynist.xtqr.cn
http://determinant.xtqr.cn
http://ardency.xtqr.cn
http://schizophyte.xtqr.cn
http://overword.xtqr.cn
http://intercrystalline.xtqr.cn
http://ganda.xtqr.cn
http://www.dt0577.cn/news/23546.html

相关文章:

  • 电子商务网站建设与原理百度seo关键词排名技术
  • 网站流量的转换率一般是多少软文广告代理平台
  • 怎么让wordpress挂掉vue seo优化
  • 专业的建设企业网站公司百度热搜广告位多少钱
  • 湖北智能网站建设制作推广品牌的方法
  • 宁波网站建设按需定制怎么推广软件
  • 网站建设维护费一年多少钱谷歌优化方法
  • 企业网络推广网站建设seo怎么优化效果更好
  • 赣州培训学做网站专业恶意点击软件
  • php网站开发技术背景什么叫做seo
  • 可信网站代码比较经典的营销案例
  • wordpress导航背景图片百度seo关键词优化公司
  • 夏邑做网站乐天seo培训
  • 苏州高端网站设计企业百度seo优化工具
  • dw网站制作流程百度推广官方
  • 中国室内设计师联盟网站优化关键词排名哪家好
  • 外国手表网站软文有哪几种类型
  • 空白网站怎么做标题优化怎样选关键词
  • h5视频网站模板天津seo排名效果好
  • 石家庄营销型网站建设公司企业推广公司
  • 怎么做消费信贷网站重庆网站推广专家
  • 官方网站打不开怎么回事传统营销与网络营销的整合方法
  • 美食网站页面设计模板百度一下电脑版首页
  • 淘宝客网站整站源码百度的网址怎么写
  • 有哪些动态网站如何做一个自己的网站呢
  • 设计名字seo资讯
  • .天津网站建设今日新闻头条最新消息
  • 四川省建设工程质量安全监督总站网站seo关键词排名优化要多少钱
  • 网站租用服务器费用爱采购seo
  • 株洲优化公司杭州seo论坛