NativeScript / NativeScript/android
Action android.intent.action.PROCESS_TEX doesn't send any data selected by user
オープン
まだ誰も着手していません。
- 主要言語
- C++
- スター
- 563
- フォーク
- 144
- 平均マージ
- 10時間 46分
- マージ済み PR(30日)
- 14
説明
Environment
Provide version numbers for the following components (information can be retrieved by running tns info in your project folder or by inspecting the package.json of the project):
- NS: "7.0.8",
- CLI: 10.1.7
To Reproduce
- create new app: tns create app-name -ng
- Add next intent-filter to activity in AndroidManifest.xml
(...)
<intent-filter>
<action android:name="android.intent.action.PROCESS_TEXT" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
(...)
- Add to main.ts code below:
application.android.on(
application.AndroidApplication.activityCreatedEvent,
function (args) {
const activity = args.activity;
// Get intent, action and MIME type
const intent = activity.getIntent();
const action = intent.getAction();
const type = intent.getType();
if (action === "android.intent.action.PROCESS_TEXT" && type != null) {
console.log("Ok");
if (type.startsWith("text/")) {
console.log("Ok");
let sharedText = intent.getStringExtra(android.content.Intent.EXTRA_TEXT);
console.log("sharedText", sharedText); // Not ok -> null
}
}
}
);
- run: tns run android
- Open android browser and select some text
- Context menu is showing properly in context menu -> click
- User app is opened but console log is not showing selected text
Additional context
{
"name": "@nativescript/template-hello-world-ng",
"main": "main.js",
"version": "7.0.8",
"author": "NativeScript Team <oss@nativescript.org>",
"description": "NativeScript Application",
"license": "SEE LICENSE IN <your-license-filename>",
"publishConfig": {
"access": "public"
},
"keywords": [
"nativescript",
"mobile",
"angular",
"{N}",
"template"
],
"repository": "<fill-your-repository-here>",
"bugs": {
"url": "https://github.com/NativeScript/NativeScript/issues"
},
"dependencies": {
"@angular/animations": "~11.0.0",
"@angular/common": "~11.0.0",
"@angular/compiler": "~11.0.0",
"@angular/core": "~11.0.0",
"@angular/forms": "~11.0.0",
"@angular/platform-browser": "~11.0.0",
"@angular/platform-browser-dynamic": "~11.0.0",
"@angular/router": "~11.0.0",
"@nativescript/angular": "~11.0.0",
"@nativescript/core": "~7.0.0",
"@nativescript/theme": "~3.0.0",
"reflect-metadata": "~0.1.12",
"rxjs": "^6.6.0",
"zone.js": "~0.11.1"
},
"devDependencies": {
"@angular/compiler-cli": "~11.0.0",
"@nativescript/android": "7.0.1",
"@nativescript/types": "~7.0.0",
"@nativescript/webpack": "~3.0.0",
"@ngtools/webpack": "~11.0.0",
"typescript": "~4.0.0"
},
"gitHead": "41a7254d3bc134fd3c258761f3c6e1c3d54e6d41",
"private": "true",
"readme": "NativeScript Application"
}
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
再現では AndroidManifest.xml と main.ts の activityCreatedEvent ハンドラーを使用します。まず、記載された PROCESS_TEXT の手順を実行し、intent データを確認してください。アプリを開いたときに、選択したブラウザのテキストが EXTRA_TEXT を通じて利用できれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- android, typescript
- 領域
- mobile
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 35/100