youngshook / PokemonHook

Add Rocker Control to Pokémon GO. No Jailbreak.
MIT License
33 stars 16 forks source link

GPS Signal not found #2

Closed soffchen closed 8 years ago

soffchen commented 8 years ago

在屋里坐飞机的时候,总是出现这个,导致人物无法移动,不知道是否有办法 Hook 掉这个?

mail2chensh commented 8 years ago

建议直接运行“start”方法,不要运行“startUpdating”,这样一般就不会提示“GPS Signal not found”

GeekWorkCode commented 8 years ago

这个需要越狱安装吗? 我安装步骤来的,最后用iresign重签名pokemon.app 安装成功 打开闪退了。是什么原因啊

soffchen commented 8 years ago

楼上大概因为没有重签名 dylib 出错

推荐 https://github.com/DanTheMan827/ios-app-signer

自动重签 dylib

GeekWorkCode commented 8 years ago

我确定对dylib 签名了(用 codesign -vv -d libLocationFaker.dylib 命令查看的),需要更改名称为PokemonHook.dylib吗?

youngshook commented 8 years ago

@fengxuelei 不需要越狱,dylib不需要改名,检查下Entitlements.plist文件是否改为自己开发者证书的 TeamID?

GeekWorkCode commented 8 years ago

@youngshook 我刚刚查了下Entitlements.plist 这个要求是dev证书签名打包才能用?我都是用dis证书打包的 ,没包含这个文件。。。

youngshook commented 8 years ago

To re-sign an iOS app with another developer account, ensure that the following are in place first.

  1. Distribution certificate of the other developer account
  2. A provisioning profile from the other developer account

Note that the Apple requires bundle IDs to be globally unique, even across accounts. So a bundle ID i.e. CFBundleIdentifier from one account can't be used in a different account, even though the team id/prefix would be different.

Ensure that the new distribution certificate is in your keychain and the new provisioning profile on your disk.

  1. Unzip the .ipa. This will usually unzip to Payload/<app-name>.app/
  2. Export entitlements.plist from the app using the codesign utility

    codesign -d --entitlements :entitlements.plist /path/to/<app-name>.app/
  3. Open entitlements.plist in your favourite editor, and modify the bundle id and prefix to that of the new dev account and app. Don't forget to update the keychain access groups.
  4. Open Info.plist in your favourite editor and modify the bundle identifier (CFBundleIdentifier). It can be found at /path/to/<app-name.app>/Info.plist.
  5. Replace the embedded provisioning profile.

    cp /path/to/new-profile.mobileprovision /path/to/<app-name>.app/embedded.mobileprovision
  6. Install the new signature.

    codesign -f -s "Distribution Certificate Name" -i com.example.new_bundle_id --entitlements entitlements.plist -vv /path/to/<app-name>.app/
  7. Package the application

    xcrun -sdk iphoneos PackageApplication -s "Distribution Certificate Name" -o /path/to/new.ipa /path/to/<app-name>.app
  8. Distribute /path/to/new.ipa to your testers.
youngshook commented 8 years ago

@fengxuelei 按照 Resign.sh 执行基本没题,前提是embedded.mobileprovision和Entitlements.plist 改为自己的。

GeekWorkCode commented 8 years ago

@youngshook 谢谢了 我现在玩的按虾神那个方法安装成功的,不过他那个没带移动键盘。。。。今天看到你这个,折腾了下 好像多个Entitlements.plist 文件, 我对这文件的作用还不太理解(菜鸟了。。。),我再去折腾折腾

soffchen commented 8 years ago

用我说的工具,全自动的…