問題タブ [cfdata]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
iphone - PDF からの画像の抽出
iPhoneアプリケーションで提供されたPDFドキュメントから特定の画像(画像のみ)を抽出することについて少し質問があります。
私はアップルのドキュメントを調べました - しかし、私はそれを見つけることができませんでした.
PDFドキュメントから画像を取得するために、次の取り組みを行いました。
c++ - std :: stringの内容をCFDataオブジェクトに取り込むにはどうすればよいですか?
オブジェクトを返す関数がありstd::string
ます。私はCocoa/CoreGraphicsを使用していますが、その文字列からCFData
オブジェクトにデータを取得して、それをオブジェクトにフィードしてを作成できるようにする方法が必要です。CGDataProviderCreateWithCFData
CGImage
CreateCFData
関数はconst UInt8*
オブジェクト(のUInt8
typedef unsigned char
)を必要としています。文字列は、デコードされたBase64文字列(画像データ)からのバイトを表すため、多くのnull「文字」が含まれているように見えるため.c_str()
、オブジェクトへの出力の明らかなキャストは機能しunsigned char*
ません。
私はC++の経験が少なく、Cocoa / CoreGraphicsに非常に慣れていないので、やりたいことを達成するためのもっと良い方法があれば、私に知らせてください。
ios - UIWebView - CFData はいつ (またはどのように) リリースされますか?
頭を壁にぶつけて眠れぬ夜を過ごした数日後、ここで助けを見つけたいと思っています。ここでさまざまな投稿を行いましたが、どの回答も解決策を提供していないようです。
要するに、私の問題は、UIWebView を頻繁に (10 分以上) 使用した後にアプリがクラッシュすることです (たとえば、大きなニュース ペーパー サイトを連続して開くなど)。
詳細を説明するには: iPhone アプリを作成していて、MainViewController から、navigationController に browserViewController をプッシュします。browserViewController は、UWebView を含む nib をロードします (プログラムで WebView を作成しません)。UIWebView は、Interface Builder を使用して接続されています。
Main に戻ってから browserViewController に戻ると、nil の場合のみ browserViewController を再作成します。(UIWebViewにロードされたコンテンツを保持したい-メモリ警告がある場合のみ、このビューをアンロードし、使用されているすべてのメモリを解放する必要があります)。
MainViewController と browserViewController の両方で、メモリ警告に応答していますが、これでは十分な緩和が得られないようです。
Instruments を見ると、たとえば CFData(store) が増加し続けていることに気付きました。また、メモリ警告をシミュレートして (以下のコードを参照)、browserViewController で viewDidUnload を呼び出しても、CFData は割り当てられたままになり、解放されません。
だから私の最大の質問は
、「ブラウジング」から作成されたメモリを解放する方法は?
これは 2 つのケース
に当てはまります。
- ユーザーが browserViewController でページをロードし続けるときにメモリを解放する方法は?
.
誰が CFData を管理しますか?
私の単純化されたサンプルコードについては、以下を参照してください。
MainViewController.h
MainViewController.m
BrowserViewController.h
BrowserViewController.m
他の投稿からさまざまな推奨事項を試しました。例えば:
1) 空のページを WebView に読み込みます。
/li>2) 上記のコードのさまざまな場所で removeAllCachedResponses を使用する
/li>3) setSharedURLCache も救済策を提供しませんでした (AppDelegate アプリケーションの DidFinishLaunching でもこれを使用しました)。
/li>
残念ながら、これはどれも「キャッシュをクリア」したり、CFData(store) によって割り当てられたメモリを解放したりするのに役立ちませんでした。
誰かがこれに光を当てて、私が見逃していることや間違っていることを教えてくれれば、私はこれを大いに感謝します.
.
.
編集:
KiwiBastard からの最初の返信の後、Instruments で観察したことを示すスクリーン ショットを追加しました。
.
.
2010年6月から編集:
私はまだこれを解決できていません。
2 回目の試行では、UIWebView を完全にプログラムで作成しました。
まだ同じ問題。しかし、私は奇妙な行動に気づきました。たとえば、PDF ドキュメントを webView にロードし、PDF ページを上下にスクロールしないと、webView とデータが正常に解放されます。ただし、2 番目のページにスクロールするとすぐに、dealloc が機能しなくなり、ある時点でアプリのメモリが不足してしまいます。これはまったく奇妙で、解決できません。
誰でもアイデアはありますか?ヘルプ?
cocoa - CFData と CFString
、CFMutableDictionaryRef
デバッガーの一部は次のとおりです。
これで、上記の値と比較して、「GMA 950」のような文字列を返すキーの値を取得できますmodel
。CFDataRef
しかし、同じメソッドを使用して値を取得できないため、文字列の代わりに返さ"vendor-id"
れる を試します。では、ベンダー ID の正しい値を取得する方法 (Intel の場合は 0x8086 を返す必要があることは既にわかっています) ??CFString
<86800000>
objective-c - {長さ = 6、容量 = 6、バイト = 0x0022412b03ad}
Xcode プロジェクトのビルドを開始するたびに、コンソールに次のように表示されます。
それが何を意味し、何がそれを引き起こしているのか、私にはわかりません。
誰かが私を助けることができますか?
どうも!
編集: このメソッドはそれを作成すると思います:
これを使用して、アクティブなインターフェイスの MAC アドレスを取得します。
ios - メモリリークなしで CFDataRef を返すには?[ios]
CFDataRef
byを返すとき
メモリ リークがありますCFDataRef
。自動解放を行う方法は? メソッド [data autorelease] は終了しません。
objective-c - 目的の c 型ポインター 'CFDataRef' の暗黙的な変換は ARC では許可されていませんか?
昨年の夏に作成した UDP タイプのソケットは問題なく動作し、プロジェクト ファイルを開いても問題なく動作します。ただし、.h/.m ファイルを ARC を含む新しいプロジェクトにインポートしました。
ARC は次のコマンド (if ステートメントで使用される) を好みません。
エラーで:
目的の C 型ポインター 'CFDataRef' の暗黙的な変換 (別名 'const struct__CFData' は ARC では許可されていません
WOLsocket で 1 回、アドレスで 1 回、エラーが繰り返されます。
ここで、WOLsocket は次のように作成されます。
(エラーチェックコードがあります。これが基本です!)
アドレスはそのように作成されます。
なぜこれが起こっているのか、私は非常に混乱しています。他のすべての ARC エラーは、'dealloc, release' ステートメントを失うことで解決されたようです!
私の質問は、CFData の使用について ARC が文句を言わないようにするにはどうすればよいですか? (どのような変更を加える必要がありますか?)
ありがとう、
アレックス
macos - バイトを取得した後にCGImageDestinationが切り捨てられた圧縮CGImage
CGImageRefから圧縮データを取得して、ネットワーク接続を介して送信したいと思います。そのために、CGImageDestinationRef(CGImageDestinationCreateWithData)を使用します。
CFDataRefオブジェクトからデータを引き出した後、画像の下部にある2行が欠落しています。
これが私がすることです(読書目的のために掃除されました...):
CFDataオブジェクトをNSDataオブジェクトとして使用し、ディスクに保存すると、機能します。
ただし、NSDatasバイトメソッドを使用する場合は同じです(切り捨てられた画像)。
CFDataオブジェクトのデータは問題ないようです。しかし、バイトを正しく取得するにはどうすればよいですか?
アドバイスありがとうございます。
objective-c - [[NSMutableData alloc] initWithLength:]とCFDataCreateMutable()の違いは?
可変データオブジェクトを作成し、SHA1ハッシュをその中に入れるコードを見ています。ターゲットの可変データオブジェクトをで初期化すると
すべてが正常に動作します。その1行をに変更すると
壊れます(SHA1コマンドの後、可変データオブジェクトはまだ空のように見えます)。どちらの場合も、の作成に続く行hashDataRef
は
両者に違いがあるとは思っていませんでしたが、明らかに何かが足りません。NSMutableDataとフリーダイヤルブリッジを使用せずに、必要な可変データオブジェクトを取得するための適切なCore Foundationの方法はありますか?